Menu

Tree [5cb188] master /
 History

HTTPS access


File Date Author Commit
 attic 2013-01-24 Leo Freitas Leo Freitas [16ef30] ADD: support for default dialect
 corejava 2015-07-29 Leo Freitas Leo Freitas [32df98] UPDATE: remove MAVEN_OPTS given Java 8 doesn't ...
 dev 2015-08-13 Andrius Velykis Andrius Velykis [6c89a2] build Dev using Java 7 compatibility
 doc 2019-08-13 marku marku [d72340] Add style/class files so paper can be run throu...
 dtx 2015-07-23 Leo Freitas Leo Freitas [e99152] LaTeX def counting + few other things....
 eclipse 2016-12-07 Leo Freitas Leo Freitas [a3dcee] minor name changes
 fonts 2013-04-09 Andrius Velykis Andrius Velykis [e18ddb] fixed Markdown links to avoid whitespace
 gaffe 2015-07-24 Leo Freitas Leo Freitas [f2895d] FIX: various warnings related to Java 1.7 and 1...
 gaffe2 2015-07-24 Leo Freitas Leo Freitas [f2895d] FIX: various warnings related to Java 1.7 and 1...
 jedit 2015-08-12 Andrius Velykis Andrius Velykis [dbaef7] update info on running deployment
 parser 2019-02-13 Leo Freitas Leo Freitas [8b3bbe] Circus type checker failing on BASIC_CHANNEL_SE...
 rules 2013-04-24 Leo Freitas Leo Freitas [2ff23a] FIX: duplicate theorem name!
 session 2015-07-29 Leo Freitas Leo Freitas [9a35fe] UPDATE: Markup to have default Charset encoding...
 src 2015-07-22 Andrius Velykis Andrius Velykis [2e8905] update versions
 typechecker 2019-02-13 Leo Freitas Leo Freitas [8b3bbe] Circus type checker failing on BASIC_CHANNEL_SE...
 ui 2024-02-16 Leo Freitas Leo Freitas [5cb188] maven assembly POM goal update
 util 2015-08-03 Leo Freitas Leo Freitas [95070b] .
 vcg 2015-07-31 Leo Freitas Leo Freitas [2e0fa9] UPDATE: vcg-z find bugs
 z2alloy 2015-07-29 Leo Freitas Leo Freitas [8cda2e] FIX: mistaken update from find bugs :-(.... now...
 z2b 2013-04-24 Leo Freitas Leo Freitas [134036] UPDATE: fix @Override + imports
 z2prob 2013-11-28 Leo Freitas Leo Freitas [e937cd] MOVED AROUND files / dir
 zeves 2015-07-27 Leo Freitas Leo Freitas [b3592b] UPDATE: rename confusing / dangerous jUnit over...
 zlive 2019-08-13 marku marku [97d517] Add sample output of tests, as run on 11 Sep 2015.
 zml 2014-09-30 Leo Freitas Leo Freitas [eb83e2] ADD: circus condifentiality to corejava + sessi...
 .gitattributes 2012-07-19 Andrius Velykis Andrius Velykis [efd6c3] fixed Git handling for UTF-16 files
 .gitignore 2016-12-07 Leo Freitas Leo Freitas [d3bcf4] minor name changes
 CHANGELOG.txt 2007-05-15 Petra Malik Petra Malik [c4946d] UPDATE:
 COPYING.txt 2006-06-22 Petra Malik Petra Malik [316c9e] INITIAL IMPORT:
 EXAMPLES.txt 2007-05-11 Petra Malik Petra Malik [b16056] MODIFY:
 INSTALL.md 2013-01-24 Andrius Velykis Andrius Velykis [d0d8e4] split INSTALL instructions into general setup a...
 NOTICE.txt 2012-10-16 Andrius Velykis Andrius Velykis [e7a173] `modeljunit` is a separate project, so removing...
 README.md 2013-06-07 Leo Freitas Leo Freitas [8ce75f] ADD: LaTeX files to CZT site . This includes gu...
 buildall.bat 2015-07-29 Leo Freitas Leo Freitas [32df98] UPDATE: remove MAVEN_OPTS given Java 8 doesn't ...
 buildall.sh 2015-07-29 Leo Freitas Leo Freitas [32df98] UPDATE: remove MAVEN_OPTS given Java 8 doesn't ...
 buildwebsite.bat 2015-07-29 Leo Freitas Leo Freitas [32df98] UPDATE: remove MAVEN_OPTS given Java 8 doesn't ...
 buildwebsite.sh 2015-07-29 Leo Freitas Leo Freitas [32df98] UPDATE: remove MAVEN_OPTS given Java 8 doesn't ...
 pom.xml 2015-08-14 Andrius Velykis Andrius Velykis [7e0bc7] reverting to an older version of wagon-ssh (pri...

Read Me

Community Z Tools

The Community Z Tools (CZT) project is an open-source Java framework for building formal methods tools for Z and Z dialects. It includes a set of tools for parsing, typechecking, transforming, animating and printing ISO Standard Z conforming specifications in LaTeX, Unicode and XML formats.

The latest version includes parser, typechecker, and printer for Z, Object Z, and Circus, an animator for Z (supports only a restricted subset of Z) as well as jEdit and Eclipse plugins that give WYSIWYG editing of Z specifications and easy access to the CZT tools.

Downloads

Releases and nightly builds can be downloaded from Sourceforge. There are different download bundles available:

  • czt-ide - Releases of standalone CZT IDE, based on Eclipse platform. Use it to author, develop and verify Z specifications.

  • czt-ide-updates - Update sites for released CZT Eclipse plugins to be installed in your own Eclipse IDE.

  • czt-jedit - Plugins for the jEdit text editor adding support for typesetting Z specifications.

  • czt - Standalone CZT library (classic distribution).

  • maven - Instructions how to use CZT libraries deployed to Maven Central.

  • corejava (old) - Old releases of corejava (deprecated).

  • typechecker - Old releases of standalone typechecker for Z and Object Z specifications (deprecated).

Source code

Refer to the Developer documentation for information on working with the CZT Git repository and building CZT from source.

Using CZT

Depending on the CZT bundle you have downloaded, there are different ways of using them. If you are working with CZT sources, refer to Developer documentation on how to build these bundles and JAR files mentioned below.

There are several ways of using the CZT tools. Independently of the way, you need the Java Runtime Environment (JRE) 6 (1.6) or any later version, which can be downloaded from here.

Running CZT as a command line tool

The CZT jar file czt.jar can be executed and used as a command line tool by calling

java -jar czt.jar

followed by arguments. Calling it without arguments prints its usage information. The command line tool can be used in two different ways.

Firstly, it can be called with the file name as argument, preceded by optional flags. This file is then parsed and typechecked and errors, if present, are reported. By specifying an output file using the -o flag, a specification can be translated into a different mark-up. The mark-up of a file (input or output) is determined by its file ending. For example, to translate a file in LaTeX mark-up into Unicode, call

java -jar czt.jar -o file.utf8 file.tex

See the usage information to get a list of supported mark-ups and file endings. There are other various flags that control the parsing behaviour; see the usage message to get more information about those.

Secondly, the command line tool can be used to call other CZT tools like, for example, the Z animator zlive. This is done by giving the name of the CZT tool as first argument followed by the arguments for the selected tool. For example, the animator is started using

java -jar czt.jar zlive

See the usage information for a list of available tools.

Using CZT Eclipse IDE

CZT provides an Eclipse-based Community Z Tools IDE to develop Z specifications. It is a modern IDE for editing and checking Z specifications, verification condition generation, Z/EVES theorem prover integration and much more!

Check out all features and learn more at CZT Eclipse subproject.

Running CZT from within jEdit

The CZT plugins for the jEdit editor give WYSIWYG editing of the Unicode markup for Z, template-based insertion of Z constructs for LaTeX and Unicode markup, automatic typechecking on each save, a SideKick panel that shows the structure of your Z specification and much much more.

See the CZT jEdit subproject for more information on installing and using the CZT jEdit plugins.

CZT LaTeX

A CZT LaTeX style is available that supports the LaTeX characters for Z and its extensions.
See the latex page for information on downloading and using the font.

CZT font

A CZT font is available that supports the Z Standard characters and its extensions.
See the font page for information on downloading and using the font.

Questions, feedback, bug reports

Please visit our project site at SourceForge! There you can file bugs, ask for help and otherwise contribute to the project.