Programming Language Theory and Formal Methods

Zoran Gacovski

Language: English

Published: Dec 15, 2022

Description:

In this book - we present topics from: formal grammars in programming, programming languages semantics, finite automata, and formal methods and semantics in distributed software. Section 1 focuses on formal methods in programming, describing integrating formal methods in XP (extreme programming) - a conceptual solution, formal methods for commercial, applications issues vs. solutions, why formal methods are considered for safety critical systems, and integration of UML sequence diagram with formal specification methods-a formal solution based on Z. Section 2 focuses on programming languages semantics, describing declarative programming with temporal constraints, in the language CG, Lolisa: formal syntax and semantics for a subset of the solidity programming language in mathematical tool coq, ontology of domains. ontological description software engineering domain - the standard life cycle, guidelines based software engineering for developing software components, intelligent agent based mapping of software requirement specification to design model. Section 3 focuses on finite automata, describing the equivalent conversion between regular grammar and finite automata, controllability, reachability, and stabilizability of finite automata: a controllability matrix method, bounded model checking of ETL cooperating with finite and looping automata connectives, an automata-based approach to pattern matching, tree automata for extracting consensus from partial replicas of a structured document. Section 4 focuses on formal methods and semantics in distributed software, describing building requirements semantics for networked software interoperability, formal semantics of OWL-s with rewrite logic, web semantic and ontology, web services conversation adaptation using conditional substitution semantics of application domain concepts.