F64adda.addc: def of bend-collections-laws-math@1.0.0.0 Import: import bend-collections-laws-math@1.0.0.0/proofs/math/typed/f64adda.bend as F64adda Lines 78-81 of bend-collections-laws-math@1.0.0.0/proofs/math/typed/f64adda.bend: https://jend.leeeet.dev/read.txt?path=bend-collections-laws-math@1.0.0.0/proofs/math/typed/f64adda.bend&start_line=78&end_line=81 import Base import bend-collections-laws-math@1.0.0.0/spec/lib/common.bend as C import bend-collections-laws-math@1.0.0.0/spec/math/w64.bend as SW import bend-collections-laws-math@1.0.0.0/src/math/w64.bend as X import bend-collections-laws-math@1.0.0.0/src/math/u64.bend as WU import bend-collections-laws-math@1.0.0.0/proofs/lib/lemmas/proofs/nat_algebra.bend as NA import bend-collections-laws-math@1.0.0.0/proofs/math/typed/w64add.bend as WA def addc(+a: WU.U64, +b: WU.U64) -> {SW.value(X.add(a, b)) == SW.value(X.add(b, a)) : Nat}: a1 = WA.add_value(a, b) a2 = WA.add_value(b, a) Equal.trans(Nat, SW.value(X.add(a, b)), C.low(64n, Nat.add(SW.value(a), SW.value(b))), SW.value(X.add(b, a)), a1, Equal.trans(Nat, C.low(64n, Nat.add(SW.value(a), SW.value(b))), C.low(64n, Nat.add(SW.value(b), SW.value(a))), SW.value(X.add(b, a)), Equal.cong(Nat, Nat, z => C.low(64n, z), Nat.add(SW.value(a), SW.value(b)), Nat.add(SW.value(b), SW.value(a)), NA.add_comm(SW.value(a), SW.value(b))), Equal.sym(Nat, SW.value(X.add(b, a)), C.low(64n, Nat.add(SW.value(b), SW.value(a))), a2))) Uses (11): https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=Equal.cong https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=Equal.sym https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=Equal.trans https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=Nat https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=Nat.add https://jend.leeeet.dev/definition.txt?path=bend-collections-laws-math@1.0.0.0/proofs/lib/lemmas/proofs/nat_algebra.bend&name=add_comm https://jend.leeeet.dev/definition.txt?path=bend-collections-laws-math@1.0.0.0/proofs/math/typed/w64add.bend&name=add_value https://jend.leeeet.dev/definition.txt?path=bend-collections-laws-math@1.0.0.0/spec/lib/common.bend&name=low https://jend.leeeet.dev/definition.txt?path=bend-collections-laws-math@1.0.0.0/spec/math/w64.bend&name=value https://jend.leeeet.dev/definition.txt?path=bend-collections-laws-math@1.0.0.0/src/math/u64.bend&name=U64 https://jend.leeeet.dev/definition.txt?path=bend-collections-laws-math@1.0.0.0/src/math/w64.bend&name=add