| valid-group-nodes(prefixn(n0, gndx)) < valid-group-nodes(prefixn(n1, gndx)), valid-group-nodes(prefixn(n0, gndx)) < # prefixn(n1, gndx), n1 ≤ n0 ⊦ gndx = [], n1 = 0 |
φ([]) ∧ (∀ gndx, gnd. φ(gndx) → φ(gndx + gnd)) ⊦ φ(gndx)
⊦ (∀ n0, gndx, n1. [] = gndx ∧ valid-group-nodes(prefixn(n0, gndx)) < valid-group-nodes(prefixn(n1, gndx)) ∧ valid-group-nodes(prefixn(n0, gndx)) < # prefixn(n1, gndx) ∧ n1 ≤ n0 → gndx = [] ∨ n1 = 0) ∧ (∀ gndx, gnd. (∀ n0, gndx1, n1. gndx = gndx1 ∧ valid-group-nodes(prefixn(n0, gndx1)) < valid-group-nodes(prefixn(n1, gndx1)) ∧ valid-group-nodes(prefixn(n0, gndx1)) < # prefixn(n1, gndx1) ∧ n1 ≤ n0 → gndx1 = [] ∨ n1 = 0) → (∀ n0, gndx1, n1. gndx + gnd = gndx1 ∧ valid-group-nodes(prefixn(n0, gndx1)) < valid-group-nodes(prefixn(n1, gndx1)) ∧ valid-group-nodes(prefixn(n0, gndx1)) < # prefixn(n1, gndx1) ∧ n1 ≤ n0 → gndx1 = [] ∨ n1 = 0))
Used terms: λ gndx0. ∀ n0, gndx, n1. gndx0 = gndx ∧ valid-group-nodes(prefixn(n0, gndx)) < valid-group-nodes(prefixn(n1, gndx)) ∧ valid-group-nodes(prefixn(n0, gndx)) < # prefixn(n1, gndx) ∧ n1 ≤ n0 → gndx = [] ∨ n1 = 0, gndx