2011 IEEE 26th Annual Symposium on Logic in Computer Science 2011
DOI: 10.1109/lics.2011.41
|View full text |Cite
|
Sign up to set email alerts
|

A Type System for Complexity Flow Analysis

Abstract: We propose a type system for an imperative programming language, which certifies program time bounds. This type system is based on secure flow information analysis. Each program variable has a level and we prevent information from flowing from low level to higher level variables. We also introduce a downgrading mechanism in order to delineate a broader class of programs. Thus, we propose a relation between security-typed language and implicit computational complexity. We establish a characterization of the cla… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
3
1
1

Citation Types

2
36
0

Year Published

2014
2014
2022
2022

Publication Types

Select...
6

Relationship

2
4

Authors

Journals

citations
Cited by 20 publications
(38 citation statements)
references
References 29 publications
2
36
0
Order By: Relevance
“…As in [18], we define two classes of operators called neutral and positive. For this, let be the sub-word relation over W, which is defined by v w , iff there are u and u such that w = u.v .u , where .…”
Section: Neutral and Positive Operatorsmentioning
confidence: 99%
See 3 more Smart Citations
“…As in [18], we define two classes of operators called neutral and positive. For this, let be the sub-word relation over W, which is defined by v w , iff there are u and u such that w = u.v .u , where .…”
Section: Neutral and Positive Operatorsmentioning
confidence: 99%
“…The objective of this paper is to study the notion of complexity flow analysis introduced in [18] in the setting of concurrency. Our model of concurrency is a simple multi-threaded imperative programming language where threads communicate through global shared variables.…”
Section: Introductionmentioning
confidence: 99%
See 2 more Smart Citations
“…This intuition underlies several systems: ramified and safe recursion [13,4], in which data is organized into strata; stratified comprehension [14], where strata are used for quantification; variants of linear logic [9] where programs are divided into strata thanks to a modality. More recently stratification of data has been related fruitfully to type systems for non-interference [18].…”
Section: Stratification and Linearmentioning
confidence: 99%