The Definition of Standard ML
The Java Language Specification
The Java Language Specification
Formal Syntax and Semantics of Java
Formal Syntax and Semantics of Java
An introduction to event structures
Linear Time, Branching Time and Partial Order in Logics and Models for Concurrency, School/Workshop
Formal modeling of a slicing algorithm for java event spaces in PVS
TPHOLs'05 Proceedings of the 18th international conference on Theorem Proving in Higher Order Logics
Hi-index | 0.00 |
The semantics of the object-oriented, multi-threaded language Java is informally described in the Java Specification Book [5] where the memory model for concurrent threads is explained abstractly by means of asynchronous events and informal rules relating their occurrences. A formalization has been presented in [3] using certain posets of events (called event spaces) and a structural operational (small-step) semantics. Such an exact formal counterpart of the informal aixiomatization of the Specification Book may not only serve as a reference semantics for different, possibly simplified, semantics, but also as a basis for language analysis. In this paper we present a machine-checked version of the formalization using Isabelle/HOL. Some proofs showing the redundancy of axioms in the Java Specification Book are discussed. As usual, by Isabelle's austerity some tacit assumptions and few minor mistakes were revealed.