By Joseph A. Goguen, Grant Malcolm
Algebraic Semantics of crucial courses offers a self-contained and novel "executable" advent to formal reasoning approximately primary courses. The authors' basic target is to enhance programming skill by means of enhancing instinct approximately what courses suggest and the way they run.The semantics of primary courses is laid out in a proper, carried out notation, the language OBJ; this makes the semantics hugely rigorous but basic, and offers help for the mechanical verification of application properties.OBJ was once designed for algebraic semantics; its declarations introduce symbols for types and services, its statements are equations, and its computations are equational proofs. therefore, an OBJ "program" is an equational concept, and each OBJ computation proves a few theorem approximately this sort of concept. which means an OBJ application used for outlining the semantics of a application already has an exact mathematical that means. additionally, regular strategies for mechanizing equational reasoning can be utilized for verifying axioms that describe the influence of central courses on summary machines. those axioms can then be utilized in mechanical proofs of homes of programs.Intended for complex undergraduates or starting graduate scholars, Algebraic Semantics of principal courses includes many examples and workouts in software verification, all of which are performed in OBJ.
Read Online or Download Algebraic Semantics of Imperative Programs PDF
Similar discrete mathematics books
The Pontryagin-van Kampen duality theorem and the Bochner theorem on positive-definite services are identified to be real for convinced abelian topological teams that aren't in the community compact. The publication units out to offer in a scientific method the prevailing fabric. it truly is in accordance with the unique concept of a nuclear workforce, including LCA teams and nuclear in the neighborhood convex areas including their additive subgroups, quotient teams and items.
This edited publication offers contemporary advancements and cutting-edge overview in quite a few components of mathematical programming and online game thought. it's a peer-reviewed examine monograph below the ISI Platinum Jubilee sequence on Statistical technological know-how and Interdisciplinary learn. This quantity offers a breathtaking view of idea and the purposes of the equipment of mathematical programming to difficulties in information, finance, video games and electric networks.
In diesem Lehrbuch werden die mathematischen Grundlagen exakt und dennoch anschaulich und intestine nachvollziehbar vermittelt. Sie werden durchgehend anhand zahlreicher Musterbeispiele illustriert, durch Anwendungen in der Informatik motiviert und durch historische Hintergründe oder Ausblicke in angrenzende Themengebiete aufgelockert.
Extra resources for Algebraic Semantics of Imperative Programs
For example, in op _or_ : Bool Bool -> Bool [as s o c id : f al s e] . id : f al s e gi ves ( f al s e or B = B). the attribu t e = B) and constants. the effects of the two identity equations ( B or f al s e Identity attributes can be groun d terms, and not j ust OBJ 3 implements r ewr i ting modulo identity by a completion process that m ay generate further equations , which may in turn lead to problems with termination and efficiency . These can b e avoided by using the att ri bute Copyrighted Material idr : , which Chapter 1 34 introduces only the identity e q u at ion s themselves, without invoking a co m p let ion process .
Not t hinking about the It is often h el pful to use equations that are only satisfied under certain conditions. These are called conditional equations. syntax are the following: cq X Y if X * Z -- Y * Z and Z = cq N Some typical conditional equations in OBJ3 = N *(N - 1)! if N > 0 = /= 0 . • Notice that the synt actic form of these equations is cq = _ _ if _ . where all th ree underbars should be filled with terms, the first two of which must have the same sort, and the third of which must have the sort Bool, which is automatically i m p or ted into every OBJ3 object and theory.
Where all th ree underbars should be filled with terms, the first two of which must have the same sort, and the third of which must have the sort Bool, which is automatically i m p or ted into every OBJ3 object and theory. The fo l lowing is a more formal statement of this: Definition 13 A conditional E-equation consis ts of three E-terms, say over variables from some gi ven ground si gn at u re 3, such t h at tl tl, t2, and t2 are of the same sort, and t3 is of sort Bool. In formal discussions, the notation "('v'3) tl = t2 if t3" will be use d .