def AP.sub_one
bend-osdev-array@0.1.0.1 · PROOF.bend:473
import bend-osdev-array@0.1.0.1/PROOF.bend as PROOF
import Base
473def AP.sub_one(n: Nat, d: Nat) -> {Word.sub(n, AP.pw(n, d), AP.pw(n, 0n)) == AP.lm(n, d) : Word(n)}:
474 match n:
475 case 0n:
476 {==}
477 case 1n+ +q:
478 match d:
479 case 0n:
480 AP.wcon_cong(q, False{}, Word.adc(q, Word.zero(q), Word.zero(q), True{}, True{}), Word.zero(q), AP.z1(q))
481 case 1n+ +e:
482 AP.wcon_cong(q, True{}, Word.adc(q, AP.pw(q, e), Word.zero(q), True{}, False{}), AP.lm(q, e), AP.z2(q, e))