Results 1 -
3 of
3
Action Semantics Reasoning About Functional Programs
- Mathematical Structures in Computer Science
, 1996
"... syntax The algebraic definition of abstract syntax trees below can, more or less, be read as a BNF grammar. Emphatic brackets, [[: : : ]], indicate nodes in an abstract syntax tree. grammar: ffl Expression = Identifier "true" "false" [[ "" Identifier "." Expression ]] [[ Expression Expression ]] ..."
Abstract
-
Cited by 5 (2 self)
- Add to MetaCart
syntax The algebraic definition of abstract syntax trees below can, more or less, be read as a BNF grammar. Emphatic brackets, [[: : : ]], indicate nodes in an abstract syntax tree. grammar: ffl Expression = Identifier "true" "false" [[ "" Identifier "." Expression ]] [[ Expression Expression ]] [[ "rec" Identifier "." Expression ]] [[ "if" Expression "then" Expression "else" Expression ]] . Action semantics reasoning about functional programs 3 ffl Identifier = [[ letter + ]] . 2.2. Semantic functions Action semantic descriptions are syntax-directed in the denotational style: compositional semantic functions map abstract syntax into meaning and are defined inductively by semantic equations. There is one universal semantic domain, namely action, the sort of actions. Actions are expressed in a notation that looks a little like informal English prose but, in fact, it is a completely formal combinator-based notation. The verbose notation should be suggestive of the meaning of th...
A Well-typed Lightweight Situation Calculus ∗
"... Situation calculus has been widely applied in Artificial Intelligence related fields. This formalism is considered as a dialect of logic programming language and mostly used in dynamic domain modeling. However, type systems are hardly deployed in situation calculus in the literature. To achieve a co ..."
Abstract
- Add to MetaCart
Situation calculus has been widely applied in Artificial Intelligence related fields. This formalism is considered as a dialect of logic programming language and mostly used in dynamic domain modeling. However, type systems are hardly deployed in situation calculus in the literature. To achieve a correct and sound typed program written in situation calculus, adding typing elements into the current situation calculus will be quite helpful. In this paper, we propose to add more typing mechanisms to the current version of situation calculus, especially for three basic elements in situation calculus: situations, actions and objects, and then perform rigid type checking for existing situation calculus programs to find out the well-typed and ill-typed ones. In this way, type correctness and soundness in situation calculus programs can be guaranteed by type checking based on our type system. This modified version of a lightweight situation calculus is proved to be a robust and well-typed system. 1

