Don Syme - Profile on Academia.edu (original) (raw)
Related Authors
Uploads
Papers by Don Syme
We describe the key features of the proof description language of Declare, an experimental theore... more We describe the key features of the proof description language of Declare, an experimental theorem prover for higher order logic. We take a somewhat radical approach to proof description: proofs are not described with tactics but by using just three expressive outlining constructs. The language is \declarative" because each step speci es its logical consequences, i.e. the constants and formulae that are introduced, independently of the justi cation of that step. Logical constants and facts are lexically scoped in a style reminiscent of structured programming. The style is also heavily \inferential", because Declare relies on an automated prover to eliminate much of the detail normally made explicit in tactic proofs. Declare has been partly inspired by Mizar, but provides better automation. The proof language has been designed to take advantage of this, allowing proof steps to be both large and controlled. We assess the costs and bene ts of this approach, and describe its impact on three areas of theorem prover design: speci cation, automated reasoning and interaction.
This t e c hnical r eport describesamachine checked proofofthetype soundness of a s u b s e t of ... more This t e c hnical r eport describesamachine checked proofofthetype soundness of a s u b s e t of the Java l anguage called Java S . A formal s e mantics for this s ubset has been developedby Drossopoulou a nd Eisenbach, and they have s k etched a n o u t l ine of the typesoundness proof. The formulation developed here complements their w r itten semantics and proof b y c o rrecting and clarifying signi cant details and it d e monstrates the utility o f f o rmal, machine checking when exploring a large and detailed p r o o f b a s ed on operational semantics. The development also serves as a case study in the application of`declarative' proof techniques to a major property o f a n o perational system.
IEEE Transactions on Computer-aided Design of Integrated Circuits and Systems, 2005
The Forte formal verification environment for datapath-dominated hardware is described. Forte has... more The Forte formal verification environment for datapath-dominated hardware is described. Forte has proven to be effective in large-scale industrial trials and combines an efficient linear-time logic model-checking algorithm, namely the symbolic trajectory evaluation (STE), with lightweight theorem proving in higher-order logic. These are tightly integrated in a generalpurpose functional programming language, which both allows the system to be easily customized and at the same time serves as a specification language. The design philosophy behind Forte is presented and the elements of the verification methodology that make it effective in practice are also described.
Sigplan Notices, 2001
The Microsoft .NET Common Language Runtime provides a shared type system, intermediate language a... more The Microsoft .NET Common Language Runtime provides a shared type system, intermediate language and dynamic execution environment for the implementation and inter-operation of multiple source languages. In this paper we extend it with direct support for parametric polymorphism (also known as generics), describing the design through examples written in an extended version of the C# programming language, and explaining aspects of implementation by reference to a prototype extension to the runtime.
Reasoning with the Formal Definition of Standard ML in HOL
ABSTRACT This paper describes the results of a project to embedthe Formal Definition of the Stand... more ABSTRACT This paper describes the results of a project to embedthe Formal Definition of the Standard ML Corelanguage into the HOL mechanized reasoning system. HOL theories of the Core syntax and dynamicsemantics are presented, including a purely definitional representation of the semantic inferencerules. The correctness of the representationis demonstrated by the derivation of several important language properties, including determinacy.A symbolic evaluator to assist in proving propertiesof...
We describe the key features of the proof description language of Declare, an experimental theore... more We describe the key features of the proof description language of Declare, an experimental theorem prover for higher order logic. We take a somewhat radical approach to proof description: proofs are not described with tactics but by using just three expressive outlining constructs. The language is \declarative" because each step speci es its logical consequences, i.e. the constants and formulae that are introduced, independently of the justi cation of that step. Logical constants and facts are lexically scoped in a style reminiscent of structured programming. The style is also heavily \inferential", because Declare relies on an automated prover to eliminate much of the detail normally made explicit in tactic proofs. Declare has been partly inspired by Mizar, but provides better automation. The proof language has been designed to take advantage of this, allowing proof steps to be both large and controlled. We assess the costs and bene ts of this approach, and describe its impact on three areas of theorem prover design: speci cation, automated reasoning and interaction.
This t e c hnical r eport describesamachine checked proofofthetype soundness of a s u b s e t of ... more This t e c hnical r eport describesamachine checked proofofthetype soundness of a s u b s e t of the Java l anguage called Java S . A formal s e mantics for this s ubset has been developedby Drossopoulou a nd Eisenbach, and they have s k etched a n o u t l ine of the typesoundness proof. The formulation developed here complements their w r itten semantics and proof b y c o rrecting and clarifying signi cant details and it d e monstrates the utility o f f o rmal, machine checking when exploring a large and detailed p r o o f b a s ed on operational semantics. The development also serves as a case study in the application of`declarative' proof techniques to a major property o f a n o perational system.
IEEE Transactions on Computer-aided Design of Integrated Circuits and Systems, 2005
The Forte formal verification environment for datapath-dominated hardware is described. Forte has... more The Forte formal verification environment for datapath-dominated hardware is described. Forte has proven to be effective in large-scale industrial trials and combines an efficient linear-time logic model-checking algorithm, namely the symbolic trajectory evaluation (STE), with lightweight theorem proving in higher-order logic. These are tightly integrated in a generalpurpose functional programming language, which both allows the system to be easily customized and at the same time serves as a specification language. The design philosophy behind Forte is presented and the elements of the verification methodology that make it effective in practice are also described.
Sigplan Notices, 2001
The Microsoft .NET Common Language Runtime provides a shared type system, intermediate language a... more The Microsoft .NET Common Language Runtime provides a shared type system, intermediate language and dynamic execution environment for the implementation and inter-operation of multiple source languages. In this paper we extend it with direct support for parametric polymorphism (also known as generics), describing the design through examples written in an extended version of the C# programming language, and explaining aspects of implementation by reference to a prototype extension to the runtime.
Reasoning with the Formal Definition of Standard ML in HOL
ABSTRACT This paper describes the results of a project to embedthe Formal Definition of the Stand... more ABSTRACT This paper describes the results of a project to embedthe Formal Definition of the Standard ML Corelanguage into the HOL mechanized reasoning system. HOL theories of the Core syntax and dynamicsemantics are presented, including a purely definitional representation of the semantic inferencerules. The correctness of the representationis demonstrated by the derivation of several important language properties, including determinacy.A symbolic evaluator to assist in proving propertiesof...