Equations
- One or more equations did not get rendered due to their size.
Equations
- One or more equations did not get rendered due to their size.
Equations
- One or more equations did not get rendered due to their size.
def
Lean.Elab.Term.BinOp.elabBinRelCore
(noProp : Bool)
(stx : Lean.Syntax)
(expectedType? : Option Lean.Expr)
:
Elaboration functionf for binrel% and binrel_no_prop% notations.
We use the infrastructure for binop% to make sure we propagate information between the left and right hand sides
of a binary relation.
Recall that the binrel_no_prop% notation is used for relations such as == which do not support Prop, but
we still want to be able to write (5 > 2) == (2 > 1).
Equations
- One or more equations did not get rendered due to their size.
If noProp == true and e has type Prop, then coerce it to Bool.
Equations
- One or more equations did not get rendered due to their size.
Step-wise reasoning over transitive relations.
calc
a = b := pab
b = c := pbc
...
y = z := pyz
proves a = z from the given step-wise proofs. = can be replaced with any
relation implementing the typeclass Trans. Instead of repeating the right-
hand sides, subsequent left-hand sides can be replaced with _.
Equations
- One or more equations did not get rendered due to their size.
Equations
- One or more equations did not get rendered due to their size.