Returns true if e is True, False, or a literal value.
See LitValues for supported literals.
Equations
- Lean.Meta.Grind.isInterpreted e = if (e.isTrue || e.isFalse) = true then pure true else do let y ← pure PUnit.unit (fun (y : PUnit) => Lean.Meta.isLitValue e) y
Instances For
Creates an ENode for e if one does not already exist.
This method assumes e has been hashconsed.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Returns the root element in the equivalence class of e.
Instances For
Returns the next element in the equivalence class of e.
Equations
- Lean.Meta.Grind.getNext e = do let __discr ← Lean.Meta.Grind.getENode? e match __discr with | some n => pure n.next | x => pure e
Instances For
@[inline]
Equations
Instances For
Instances For
Equations
- Lean.Meta.Grind.addEq lhs rhs proof = Lean.Meta.Grind.addEqCore lhs rhs proof false