CurryInfo: verify-non-fail-2.0.0 / Verify.WithSMT.elimFailed

definition:
 
elimFailed :: Int -> Term -> (Term, [(Int,Sort)])
elimFailed maxusedvar trm =
  let st0 = TransApplyState (maximum (maxusedvar : allVarsInTerm trm) + 1) []
      (ntrm,st1) = runState (elimFailedInTerm trm) st0
  in (ntrm, reverse (tsNewVars st1))
demand:
 no demanded arguments
deterministic:
 deterministic operation
documentation:
 
Transforms a term by replacing occurrences of
`Prelude_failed` with new fresh variables.
The first argument is the maximum index of already used variables.
failfree:
 (_, _)
indeterministic:
 referentially transparent operation
infix:
 no fixity defined
iotype:
 {(_,_) |-> {(,)}}
name:
 elimFailed
precedence:
 no precedence defined
result-values:
 {(,)}
signature:
 Prelude.Int -> Verify.ESMT.Term
-> (Verify.ESMT.Term, [(Prelude.Int, Verify.ESMT.Sort)])
solution-complete:
 operation might suspend on free variables
terminating:
 possibly non-terminating
totally-defined:
 possibly non-reducible on same data term