This module contains some operations to access and check proof for theorems formulated as properties in Curry programs.
Current assumptions:
sortPreservesLength xs = length xs -=- length (sort xs)
currypp), if there exists
a file named with prefix "Proof" and the qualified name of the theorem,
e.g., Proof-Sort-sortPreservesLength.agda.
The name is not case sensitive, the file name extension is arbitrary
and the special characters in the name are ignored.
Hence, a proof for sortlength
could be also stored in
a file named PROOF_Sort_sort_preserves_length.smt.
f
is deterministic has the name
fIsDeterministic
so that a proof for last
can be stored in
proof-last-is-deterministic.agda
(and also in some other files).
Author: Michael Hanus
Version: December 2018
determinismTheoremFor
:: String -> String
The name of a proof of a determinism annotation for the operation given as the argument. |
getModuleProofFiles
:: String -> String -> IO [String]
Get the names of all files in the directory (first argument) containing proofs of theorems of the module (second argument). |
existsProofFor
:: (String,String) -> [String] -> Bool
Does the list of file names (second argument) contain a proof of the qualified theorem name given as the first argument? |
isProofFileNameFor
:: (String,String) -> String -> Bool
Is this the file name of a proof of property prop?
|
getTheoremFunctions
:: String -> CurryProg -> IO [CFuncDecl]
Get all theorems which are contained in a given program. |
|
The name of a proof of a determinism annotation for the operation given as the argument.
|
|
Get the names of all files in the directory (first argument) containing proofs of theorems of the module (second argument). |
|
Does the list of file names (second argument) contain a proof of the qualified theorem name given as the first argument? |
|
Is this the file name of a proof of property |
|
Get all theorems which are contained in a given program. A theorem is a property for which a proof file exists in the directory provided as first argument. |