Application and Formal Specification of Sorted Term-Position Algebras

Sorted term-position algebras are an extension of term algebras. In addition to sorted terms with constructor and selector functions, they provide term positions as algebra elements and functions that relate term positions. This paper describes possible applications of term-position algebras and investigates their formal specification in existing specification frameworks. In particular, it presents an algebraic specification of term-positions in Casl and in a higher-order logic.

[1]  Markus Roggenbach,et al.  Towards Trustworthy Specifications I: Consistency Checks , 2001, WADT.

[2]  Peter D. Mosses,et al.  CASL User Manual , 2004, Lecture Notes in Computer Science.

[3]  Frank Pfenning,et al.  Higher-order abstract syntax , 1988, PLDI '88.

[4]  Peter D. Mosses,et al.  CASL: the Common Algebraic Specification Language , 2002, Theor. Comput. Sci..

[5]  Reinhard Wilhelm,et al.  Solving shape-analysis problems in languages with destructive updating , 1998, TOPL.

[6]  Nils Klarlund,et al.  Mona & Fido: The Logic-Automaton Connection in Practice , 1997, CSL.

[7]  Martin Wirsing,et al.  Extraction of Structured Programs from Specification Proofs , 1999, WADT.

[8]  Peter D. Mosses,et al.  CASL User Manual: Introduction to Using the Common Algebraic Specification Language , 2004 .

[9]  Peter D. Mosses,et al.  Casl Reference Manual , 2004, Lecture Notes in Computer Science.

[10]  Egon Börger,et al.  A Programmer Friendly Modular Definition of the Semantics of Java , 1999, Formal Syntax and Semantics of Java.

[11]  Kenneth Slonneger,et al.  Executing continuation semantics: A comparison , 1993, Softw. Pract. Exp..

[12]  Stephen J. Garland,et al.  Larch: Languages and Tools for Formal Specification , 1993, Texts and Monographs in Computer Science.

[13]  Martin Wirsing,et al.  An Event-Based Structural Operational Semantics of Multi-Threaded Java , 1999, Formal Syntax and Semantics of Java.

[14]  Alex K. Simpson,et al.  Computational Adequacy in an Elementary Topos , 1998, CSL.

[15]  Arnd Poetzsch-Heffter Prototyping realistic programming languages based on formal specifications , 1997, Acta Informatica.

[16]  Robin Milner,et al.  Definition of standard ML , 1990 .

[17]  Lawrence Charles Paulson,et al.  Isabelle/HOL: A Proof Assistant for Higher-Order Logic , 2002 .

[18]  Bernhard Bauer,et al.  Übersetzung objektorientierter Programmiersprachen , 1998 .