* What is This?

This is the source code of CoLL-Saigawa, a confluence tool for term rewrite
systems, and CoLL a commutation tool for left-linear term rewrite systems.

* How to Compile?

You need OCaml 4.06 (for Linux) and its external library camlp4.
They can be installed by using the package manager "opam"
(https://opam.ocaml.org/):

  opam switch 4.06.1
  opam install camlp4

In order to compile CoLL-Saigawa, just type
  
  make collsaigawa

"collsaigawa" is the tool.  To compile CoLL, type

  make coll

"coll" is the tool.

* How to Run?

Please download Z3, NaTT 1.9 and MiniSmt v0.3, and then properly set PATH for
these binaries.  The typical usage of collsaigawa is:

  collsaigawa test.trs

It tries to show (non-)confluence of test.trs and outputs 
- YES   if confluence is shown, 
- NO    if non-confluence is shown, and 
- MAYBE if the tool does not reach any conclusion.

The usage of CoLL is:

  coll test_comm.trs

It tries to show (non-)commutation of two TRSs in test_comm.trs, and
outputs
- YES   if commutation is shown, 
- NO    if non-commutation is shown, and 
- MAYBE if the tool does not reach any conclusion.

Note that the input and output formats of CoLL-Saigawa and CoLL follow the
formats adopted in the Confluence Competition (CoCo):

  http://project-coco.uibk.ac.at/2019/categories/trs.php
  http://project-coco.uibk.ac.at/2019/categories/commutation.php

See also the help messages:

  collsaigawa -help
  coll --help


* Authors
Nao Hirokawa
Kiraku Shintani

* License
GNU Lesser General Public License 2
