def gt.log_go_lt
bend-osdev-gf@0.1.1.0 · proof_tab.bend:172
import bend-osdev-gf@0.1.1.0/proof_tab.bend as ProofTab
import Base
import bend-osdev-gf@0.1.1.0/gf.bend as G
import bend-osdev-u32@0.1.0.0/LAWS.bend as UL
172def gt.log_go_lt(+n: Nat, hit: Bool, +f: G.Gf8Field, +a: U32, +cur: U32, +i: Nat) -> {Nat.is_lt(G.Gf8.log.go(n, hit, f, a, cur, i), 1n+Nat.add(n, i)) == True{} : Bool}:
173 match n hit:
174 case _ True{}:
175 gt.lt_self_add(n, i)
176 case 0n False{}:
177 {==}
178 case 1n+k False{}:
179 %UL.nat_add_succ(k, i) : {Nat.is_lt(G.Gf8.log.go(k, U32.is_eq(G.Gf8.mul(f, G.Gf8.gen(f), cur), a), f, a, G.Gf8.mul(f, G.Gf8.gen(f), cur), 1n+i), 1n+_) == True{} : Bool}
180 gt.log_go_lt(k, U32.is_eq(G.Gf8.mul(f, G.Gf8.gen(f), cur), a), f, a, G.Gf8.mul(f, G.Gf8.gen(f), cur), 1n+i)