Equations
Equations
Equations
Equations
- Auto.SMT.instToStringLamAtomic = { toString := Auto.SMT.LamAtomic.toString✝ }
@[reducible, inline]
selectorInfo contains:
- The name of the selector
- Whether the selector is a projection
- The constructor that the selector is for
- The index of the argument that it is selecting
- The name of the SMT datatype that the selector is for (i.e. the name of the input type)
- The LamSort of the SMT datatype that the selector is for (i.e. the input type)
- The output type of the selector (full type is an arrow type that takes in a datatype and returns the output type)
Equations
Instances For
def
Auto.SMT.LamAtomic.toLeanExpr
(tyValMap varValMap etomValMap : Std.HashMap Nat Lean.Expr)
(atomic : Auto.SMT.LamAtomic✝)
:
Equations
- One or more equations did not get rendered due to their size.
- Auto.SMT.LamAtomic.toLeanExpr tyValMap varValMap etomValMap (Auto.SMT.LamAtomic.bvOfNat✝ a) = pure ((Lean.Expr.const `BitVec.ofNat []).app (Lean.Expr.lit (Lean.Literal.natVal a)))
- Auto.SMT.LamAtomic.toLeanExpr tyValMap varValMap etomValMap (Auto.SMT.LamAtomic.bvToNat✝ a) = pure ((Lean.Expr.const `BitVec.toNat []).app (Lean.Expr.lit (Lean.Literal.natVal a)))
- Auto.SMT.LamAtomic.toLeanExpr tyValMap varValMap etomValMap (Auto.SMT.LamAtomic.compCtor✝ a) = do let e ← Auto.Lam2D.interpLamTermAsUnlifted tyValMap varValMap etomValMap 0 a pure e
- Auto.SMT.LamAtomic.toLeanExpr tyValMap varValMap etomValMap (Auto.SMT.LamAtomic.compProj✝ a) = do let e ← Auto.Lam2D.interpLamTermAsUnlifted tyValMap varValMap etomValMap 0 a pure e
Instances For
- tyVal : Array (Lean.Expr × Lean.Level)
- varVal : Array (Lean.Expr × Embedding.Lam.LamSort)
- lamEVarTy : Array Embedding.Lam.LamSort
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- One or more equations did not get rendered due to their size.
- Auto.SMT.SMTNamingInfo.suggestNameForSort.go sni (Auto.Embedding.Lam.LamSort.base b) = pure b.toString
- Auto.SMT.SMTNamingInfo.suggestNameForSort.go sni (a.func argTy) = Auto.SMT.SMTNamingInfo.suggestNameForSort.go sni argTy
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- One or more equations did not get rendered due to their size.
- Auto.SMT.SMTNamingInfo.suggestNameForAtomic.go sni (Auto.SMT.LamAtomic.etom✝ a) = pure (toString "sk" ++ toString a ++ toString "")
- Auto.SMT.SMTNamingInfo.suggestNameForAtomic.go sni (Auto.SMT.LamAtomic.compCtor✝ a) = pure "cC"
- Auto.SMT.SMTNamingInfo.suggestNameForAtomic.go sni (Auto.SMT.LamAtomic.compProj✝ a) = pure "cP"
Instances For
def
Auto.SMT.lamTermAtom2String
(sni : SMTNamingInfo)
(lamVarTy : Array Embedding.Lam.LamSort)
(n : Nat)
:
Equations
- One or more equations did not get rendered due to their size.
Instances For
def
Auto.SMT.lamTermEtom2String
(sni : SMTNamingInfo)
(lamEVarTy : Array Embedding.Lam.LamSort)
(n : Nat)
:
Equations
- One or more equations did not get rendered due to their size.
Instances For
def
Auto.SMT.lamQuantified2STerm
(sni : SMTNamingInfo)
(forall? : Bool)
(s : Embedding.Lam.LamSort)
(body : IR.SMT.TransM Auto.SMT.LamAtomic✝ Embedding.Lam.LamSort IR.SMT.STerm)
:
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
def
Auto.SMT.withExprValuation
{α : Type}
[Inhabited α]
(sni : SMTNamingInfo)
(h2lMap : Std.HashMap Auto.SMT.LamAtomic✝ String)
(printFn : Std.HashMap Nat Lean.Expr → Std.HashMap Nat Lean.Expr → Std.HashMap Nat Lean.Expr → Lean.MetaM α)
:
printFn : (tyValMap : _) → (varValMap : _) → (etomValMap : _) → MetaM α
Equations
- One or more equations did not get rendered due to their size.
Instances For
def
Auto.lamFOL2SMT
(sni : SMT.SMTNamingInfo)
(lamVarTy lamEVarTy : Array Embedding.Lam.LamSort)
(facts : Array Embedding.Lam.LamTerm)
(minds : Array Embedding.Lam.MutualIndInfo)
:
facts
should not contain import versions of eq, ∀
or ∃
valid_fact_{i}
corresponds to the i
-th entry in facts
Equations
- One or more equations did not get rendered due to their size.
Instances For
def
Auto.lamFOL2SMTWithExtraInfo
(sni : SMT.SMTNamingInfo)
(lamVarTy lamEVarTy : Array Embedding.Lam.LamSort)
(facts : Array Embedding.Lam.LamTerm)
(minds : Array Embedding.Lam.MutualIndInfo)
:
Identical to lamFOL2SMT
but it also outputs Auto.IR.SMT.State.l2hMap
, Auto.IR.SMT.getWfPredicatesInvMap
, and selector information
Equations
- One or more equations did not get rendered due to their size.