An example of a LinearOrderedCommMonoidWithZero
in which the product of two positive
elements vanishes.
This is the monoid with 3 elements 0, ε, 1
where ε ^ 2 = 0
and everything else is forced.
The order is 0 < ε < 1
. Since ε ^ 2 = 0
, the product of strictly positive elements can vanish.
Relevant Zulip chat: https://leanprover.zulipchat.com/#narrow/stream/116395-maths/topic/mul_pos
The three element monoid.
- zero: Counterexample.Foo
- eps: Counterexample.Foo
- one: Counterexample.Foo
Instances For
Equations
- Counterexample.instDecidableEqFoo x y = if h : x.toCtorIdx = y.toCtorIdx then isTrue ⋯ else isFalse ⋯
Equations
- Counterexample.Foo.inhabited = { default := Counterexample.Foo.zero }
Equations
- Counterexample.Foo.instZero = { zero := Counterexample.Foo.zero }
Equations
- Counterexample.Foo.instOne = { one := Counterexample.Foo.one }
The order on Foo
is the one induced by the natural order on the image of aux1
.
Equations
- Counterexample.Foo.zero.aux1 = 0
- Counterexample.Foo.eps.aux1 = 1
- Counterexample.Foo.one.aux1 = 2
Instances For
A tactic to prove facts by cases.
Equations
- Counterexample.Foo.boom = Lean.ParserDescr.node `Counterexample.Foo.boom 1024 (Lean.ParserDescr.nonReservedSymbol "boom" false)
Instances For
Multiplication on Foo
: the only external input is that ε ^ 2 = 0
.
Equations
- Counterexample.Foo.one.mul x = x
- x.mul Counterexample.Foo.one = x
- x✝.mul x = 0
Instances For
Equations
- One or more equations did not get rendered due to their size.