CurryInfo: contract-prover-4.0.0 / ContractProver.checkImplication

definition:
checkImplication :: Options -> IORef VState -> String -> [(Int,TypeExpr)]
                 -> Term -> Term -> Term -> IO (Maybe String)
checkImplication opts vstref scripttitle vartypes assertion impbindings imp =
  if optVerify opts
    then checkImplicationWithSMT opts vstref scripttitle vartypes
                                 assertion impbindings imp
    else return Nothing
demand:
argument 1
deterministic:
deterministic operation
documentation:
---------------------------------------------------------------------------
failfree:
<FAILING>
indeterministic:
referentially transparent operation
infix:
no fixity defined
iotype:
{(_,_,_,_,_,_,_) |-> _}
name:
checkImplication
precedence:
no precedence defined
result-values:
_
signature:
ToolOptions.Options -> Data.IORef.IORef VerifierState.VState -> String
-> [(Prelude.Int, FlatCurry.Types.TypeExpr)] -> ESMT.Term -> ESMT.Term
-> ESMT.Term -> Prelude.IO (Prelude.Maybe String)
solution-complete:
operation might suspend on free variables
terminating:
possibly non-terminating
totally-defined:
possibly non-reducible on same data term