def mul_comm
bendtorch-core@0.1.0.0 · src/shape/nat_proofs.bend:75
import bendtorch-core@0.1.0.0/src/shape/nat_proofs.bend as NatProofs
import Base
75def mul_comm(+a: Nat, +b: Nat) -> {Nat.mul(a, b) == Nat.mul(b, a) : Nat}:
76 match a:
77 case 0n:
78 Equal.sym(Nat, Nat.mul(b, 0n), 0n, mul_zero_right(b))
79 case 1n+p:
80 %Equal.sym(Nat, Nat.mul(b, 1n+p), Nat.add(b, Nat.mul(b, p)), mul_succ_right(b, p)) : {Nat.add(b, Nat.mul(p, b)) == _ : Nat}
81 Equal.cong(Nat, Nat, value => Nat.add(b, value), Nat.mul(p, b), Nat.mul(b, p), mul_comm(p, b))