ratp

ratp is an interactive prover for a variant of propositional linear logic. It is highly experimental although the code is well-structured and designed to be easily extended. It is available under the license "Do whatever you want with it". ratp implements the (simplified) logical consequence judgment of the paper Separation Logic Contracts for a Java-like Language with Fork/Join (it was used to prove some examples of this paper). The calculus implemented is a sequent calculus for propositional linear logic with the following differences:

Download: ratp-0.0.3.tgz

This file contains the following: To launch the tool (Java 1.6 or higher recommended (altough not tested, it should work with 1.5)):
java -jar bin/ratp-0.0.3.jar
Here is a sample interaction with the tool:
Welcome to ratp version 0.0.3 Enter '?.' for available commands. # Proof !(A -* B), A, A |- (B * B). 1: !(A -* B) 2: A 3: A ============ B * B < contraction ! 1. 1: !(A -* B) 2: !(A -* B) 3: A 4: A ============ B * B < left ! 1. 1: A -* B 2: !(A -* B) 3: A 4: A ============ B * B < left ! 2. 1: A -* B 2: A -* B 3: A 4: A ========= B * B < consume 3 with 1. 1: A -* B 2: A 3: B ========= B * B < consume 2 with 1. 1: B 2: B ==== B * B < right * 1 0; ax 1; ax 1. Proof completed!

main page page principale pagina principale (main page) Valid XHTML 1.0 Transitional Valid CSS Last modification: September 19, 2008