Supriya Ghosh (Editor)

Z notation

Updated on
Edit
Like
Comment
Share on FacebookTweet on TwitterShare on LinkedInShare on Reddit
Z notation Formal modeling with Z

Introduction to z notation


The Z notation /ˈzɛd/ is a formal specification language used for describing and modelling computing systems. It is targeted at the clear specification of computer programs and computer-based systems in general.

Contents

Z notation Rafael H Bordini John A Campbell and Renata Vieira Taxonomical

History

Z notation Formal methods 4 Z notation

In 1974, Jean-Raymond Abrial published "Data Semantics". He used a notation that would later be taught in the University of Grenoble until the end of the 1980s. While at EDF (Électricité de France), Abrial wrote internal notes on Z. The Z notation is used in the 1980 book Méthodes de programmation.

Z notation Formal methods 4 Z notation

Z was originally proposed by Abrial in 1977 with the help of Steve Schuman and Bertrand Meyer. It was developed further at the Programming Research Group at Oxford University, where Abrial worked in the early 1980s, having arrived at Oxford in September 1979.

Abrial answers the question "Why Z?" with "Because it is the ultimate language!"

Usage and notation

Z notation ObjectZ Web Environment and Projections to UML

Z is based on the standard mathematical notation used in axiomatic set theory, lambda calculus, and first-order predicate logic. All expressions in Z notation are typed, thereby avoiding some of the paradoxes of naive set theory. Z contains a standardized catalog (called the mathematical toolkit) of commonly used mathematical functions and predicates.

Z notation httpsuploadwikimediaorgwikipediacommonsthu

Although Z notation (just like the APL language, long before it) uses many non-ASCII symbols, the specification includes suggestions for rendering the Z notation symbols in ASCII and in LaTeX.

Standards

Z notation Introduction to Z Notation YouTube

ISO completed a Z standardization effort in 2002. This standard and a technical corrigendum are available from ISO for free:

  • the standard is publicly available from the ISO ITTF site free of charge and, separately, available for purchase from the ISO site;
  • the technical corrigendum is available from the ISO site free of charge.
  • Tools

  • Community Z Tools (CZT) (project), Source forge .
  • Z Word tools (project), Source forge  for developing and checking Z specifications in Microsoft Word.
  • Spivey, Michael ‘Mike’, Fuzz Type-Checker for Z .
  • Z/Eves — A proof checker for the Z notation (German site but all manuals in English)
  • Z/EVES Documentation, papers, and manuals on Z/EVES
  • ZETA open-source system for development software specifications in Z
  • HOL-Z open-source proof environment for Z in Isabelle/HOL
  • CADiZ, a set of free software tools that assist use of Z notation
  • ProofPower, a suite of open-source tools supporting specification and proof in HOL and in the Z notation
  • z-vimes Z-Vimes: type checker and (eventually) theorem prover for the Z specification language.
  • ProB is an animator and model checker originally written for the B-Method that provides also support for Z specifications ("ProZ") that conform to the Fuzz type checker.
  • References

    Z notation Wikipedia