Filters








1,219,612 Hits in 4.8 sec

Types as abstract interpretations

Patrick Cousot
1997 Proceedings of the 24th ACM SIGPLAN-SIGACT symposium on Principles of programming languages - POPL '97  
Then by successive (semi-dual) Galois connection based abstractions, type systems and/or type inference algorithms are designed as abstract semantics or abstract interpreters approximating the type collecting  ...  This shows that types are abstract interpretations. , which is greater than or equal to ⊥ [8, 20] .  ...  Type systems can be viewed as abstract semantics in the lattice of abstract interpretations [9] which are more abstract than a type collecting semantics which is the most general type system in that  ... 
doi:10.1145/263699.263744 dblp:conf/popl/Cousot97 fatcat:7a4psez5rrbs7gf4a55thgxdxy

Imperative Polymorphism by Store-Based Types as Abstract Interpretations

Casper Bach Poulsen, Peter D. Mosses, Paolo Torrini
2015 Proceedings of the 2015 Workshop on Partial Evaluation and Program Manipulation - PEPM '15  
We consider abstract interpretation as a tool for constructing safe and precise type systems, and investigate how to derive store-based types by abstract interpretation.  ...  We propose store-based types as a type discipline that holds potential for interesting and flexible alternatives to the value restriction.  ...  systems that are safe by construction from big-step operational semantics, by treating types as abstract interpretations.  ... 
doi:10.1145/2678015.2682545 dblp:conf/pepm/PoulsenMT15 fatcat:hoo24q7xwzdpjajncelryhb33y

Separate abstract interpretation for control-flow analysis [chapter]

Yan Mei Tang, Pierre Jouvelot
1994 Lecture Notes in Computer Science  
This separate abstract interpretation is as effective as the abstract interpretation approach on closed expressions, but is also able to tackle expressions with free variables, using their types to approximate  ...  This static control-flow analysis can be expressed using either a type and effect system or abstract interpretation.  ...  Consequently, the accuracy of separate abstract interpretation is only as good as the one of the type and effect analysis.  ... 
doi:10.1007/3-540-57887-0_98 fatcat:miv2o7aorffm5chln2xvjfrg2y

Tagging, Encoding, and Jones Optimality [chapter]

Olivier Danvy, Pablo E. Martínez López
2003 Lecture Notes in Computer Science  
The representation shift amounts to reading the type tags as constructors for higherorder abstract syntax.  ...  Jones optimality has already been obtained if the self-interpreter is untyped. If the selfinterpreter is typed, however, residual programs are cluttered with type tags.  ...  Our insight about higher-order abstract syntax occurred  ... 
doi:10.1007/3-540-36575-3_23 fatcat:jvnmc2m3lngndog75mzeowk7vm

Compositional soundness proofs of abstract interpreters

Sven Keidel, Casper Bach Poulsen, Sebastian Erdweg
2018 Proceedings of the ACM on Programming Languages  
Abstract interpretation [Cousot and Cousot 1979] is an approach to static analysis with soundness at its heart: An abstract interpreter must approximate the behavior of a program as prescribed by a concrete  ...  Parametricity not only provides us with useful guidelines for how to design non-leaky interfaces for shared interpreters, but also provides us soundness of shared pure functions as free theorems.  ...  Based on this type, we can implement TryZero in the abstract interpreter as shown in Figure 2 .  ... 
doi:10.1145/3236767 dblp:journals/pacmpl/KeidelPE18 fatcat:otxsbjtkubhy5hsoll3zj2lgke

Abstract Interpretation: Theory and Practice [chapter]

Patrick Cousot
2002 Lecture Notes in Computer Science  
Abstract interpretation theory formalizes the conservative approximation of the semantics of hardware and software computer systems.  ...  Abstract interpretation theory provides thinking tools since the idea of abstraction by conservative approximation is central to reasoning (in particular on computer systems) and mechanical tools since  ...  The hierarchy includes classical Milner/Mycroft and Damas/Milner polymorphic type schemes, Church/Curry monotypes and Hindley principal typing algorithm as well as new à la Church/Curry polytype systems  ... 
doi:10.1007/3-540-46017-9_2 fatcat:fnqj3mazc5b23ifmiiix3hig4q

Type inference, abstract interpretation and strictness analysis

Mario Coppo, Alberto Ferrari
1993 Theoretical Computer Science  
Ferrari, Type inference, abstract interpretation and strictness analysis, Theoretical Computer Science 121 (1993) 113-143.  ...  ., 1984) can be seen as abstract domains for the interpretation of (functional) type-free programming languages.  ...  Then Filter models as abstract interpretations Filter models have been introduced in [6].  ... 
doi:10.1016/0304-3975(93)90086-9 fatcat:iq5whyczqjazdkvvoano6isqie

Abstract interpretation using attribute grammars [chapter]

Mads Rosendahl
1990 Lecture Notes in Computer Science  
An abstract interpretation can be seen as a special case of a data-flow analysis where the proof is based on a simple relationship between the domains in the two interpretations.  ...  An abstract interpretation is often expressed in the framework of denotational semantics (see [Gordon 1979], and [Schmidt 1986]) where the meaning is expressed as the fixpoint of an equation system of  ...  For the abstract interpretation the circular definition is for objects of type → ( ).  ... 
doi:10.1007/3-540-53101-7_11 fatcat:xv6hc7uomffk7ntyvqruxfjl5m

The evaluation transformer model of reduction and its correctness [chapter]

GL Burn
1991 Lecture Notes in Computer Science  
A number of analysis techniques, such as abstract interpretation and projection analysis, have been developed to find out information that can alleviate these overheads.  ...  evaluation model, the evaluation transformer model of reduction, which can use information from these analysis techniques, and proves that the resulting reduction strategies produce the same answers as  ...  Interpretation of the Types Abstract domain points can be regarded as representing a Scott-closed set of objects from the standard interpretation of a type.  ... 
doi:10.1007/3540539816_81 fatcat:jzcldq6u3nax7ptmgtu3gll6gy

Deriving algorithms from type inference systems

Chris Hankin, Daniel Le Métayer
1994 Proceedings of the 21st ACM SIGPLAN-SIGACT symposium on Principles of programming languages - POPL '94  
de of non-standard type inference in static program analysis has been much studied recently.  ...  Early work emphasised the efficiency of type inference algorithms and paid little attention to the correctness of the inference system.  ...  In contrast to abstract interpretation, type inference systems are routinely implemented as part of production quality compilers.  ... 
doi:10.1145/174675.177858 dblp:conf/popl/HankinM94 fatcat:r4rlumbotrc5df2z7afrrr2ntu

Abstraction in perceptual symbol systems

L. W. Barsalou
2003 Philosophical Transactions of the Royal Society of London. Biological Sciences  
Three central properties of these abstractions are established: (i) type-token interpretation; (ii) structured representation; and (iii) dynamic realization.  ...  Type-token interpretation results from binding a property simulator to a region of a perceived or simulated category member.  ...  B (2003) entity, a type-token relation results that interprets the entity as a CAR. Once the type-token relation exists, inferences follow from the type to the token (e.g. the entity uses gasoline).  ... 
doi:10.1098/rstb.2003.1319 pmid:12903648 pmcid:PMC1693222 fatcat:gwquipsorra7rjrlfarkuvgltu

From Interpreter to Logic Engine by Defunctionalization

Dariusz Biernacki, Olivier Danvy
2004 BRICS Report Series  
Starting from a continuation-based interpreter for a simple logic programming language, propositional Prolog with cut, we derive the corresponding logic engine in the form of an abstract machine.  ...  The key transformation here is Reynolds's defunctionalization that transforms a tail-recursive, continuation-passing interpreter into a transition system, i.e., an abstract machine.  ...  of goal * clause list * scont * fcont * ccont withtype ccont = fcont As in Section 1.2, since both data types are isomorphic to the data type of lists, we represent them as such when presenting the abstract  ... 
doi:10.7146/brics.v11i5.21830 fatcat:qyrqxly2dncbrkwliamws3mesi

Automatic generation and management of interprocedural program analyses

Kwangkeun Yi, Williams Ludwell Harrison
1993 Proceedings of the 20th ACM SIGPLAN-SIGACT symposium on Principles of programming languages - POPL '93  
System Z is based on the abstract interpretation framework. The input to system Z is a high-level specification of an abstract interpreter.  ...  As the last step, he approximates the instrumented interpreter into an abstract interpreter.  ...  An abstract interpreter specification in Z consists of type definitions and the interpreter function definition. Type definitions may contain projection expressions.  ... 
doi:10.1145/158511.158642 dblp:conf/popl/YiH93 fatcat:6qfsdj5norfe7e2o5zibw52qq4

From Interpreter to Logic Engine by Defunctionalization [chapter]

Dariusz Biernacki, Olivier Danvy
2004 Lecture Notes in Computer Science  
Starting from a continuation-based interpreter for a simple logic programming language, propositional Prolog with cut, we derive the corresponding logic engine in the form of an abstract machine.  ...  The key transformation here is Reynolds's defunctionalization that transforms a tail-recursive, continuation-passing interpreter into a transition system, i.e., an abstract machine.  ...  of goal * clause list * scont * fcont * ccont withtype ccont = fcont As in Section 1.2, since both data types are isomorphic to the data type of lists, we represent them as such when presenting the abstract  ... 
doi:10.1007/978-3-540-25938-1_13 fatcat:bozadqotlzhghms3ufjadrodoe

From Interpreter to Logic Engine by Defunctionalization

Dariusz Biernacki, Olivier Danvy
2003 BRICS Report Series  
Starting from a continuation-based interpreter for a simple logic programming language, propositional Prolog with cut, we derive the corresponding logic engine in the form of an abstract machine.  ...  The key transformation here is Reynolds's defunctionalization that transforms a tail-recursive, continuation-passing interpreter into a transition system, i.e., an abstract machine.  ...  of goal * clause list * scont * fcont * ccont withtype ccont = fcont As in Section 1.2, since both data types are isomorphic to the data type of lists, we represent them as such when presenting the abstract  ... 
doi:10.7146/brics.v10i25.21954 fatcat:mmeqvg54zjbnjpnb4ou3ahtwqi
« Previous Showing results 1 — 15 out of 1,219,612 results