| rk ∈ rks, r -- mkfs(stringvar .class, ty, fieldvar) ' ∈ rks, # str ≤ # stringvar, ∀ rk0. rk0 ≠ rk ∧ rk0 ∈ rks ∧ is_fskey(rk0 .key) → # rk0 .key .fs .class .class < # str, ∀ rks0. # rks0 < # rks → (true → (∃ str. ∀ rk. rk ∈ rks0 ∧ is_fskey(rk .key) → ¬ # str ≤ # rk .key .fs .class .class)) ⊦ # rks = 0, rks = ∅, ∃ str. ∀ rk. rk ∈ rks ∧ is_fskey(rk .key) → ¬ # str ≤ # rk .key .fs .class .class |
rk ∈ rks, r -- mkfs(stringvar .class, ty, fieldvar) ' ∈ rks, # str ≤ # stringvar, r -- mkfs(stringvar .class, ty, fieldvar) ' ≠ rk ∧ r -- mkfs(stringvar .class, ty, fieldvar) ' ∈ rks ∧ is_fskey((r -- mkfs(stringvar .class, ty, fieldvar) ') .key) → # (r -- mkfs(stringvar .class, ty, fieldvar) ') .key .fs .class .class < # str, ∀ rk0. rk0 ≠ rk ∧ rk0 ∈ rks ∧ is_fskey(rk0 .key) → # rk0 .key .fs .class .class < # str, ∀ rks0. # rks0 < # rks → (true → (∃ str. ∀ rk. rk ∈ rks0 ∧ is_fskey(rk .key) → ¬ # str ≤ # rk .key .fs .class .class)) ⊦ # rks = 0, rks = ∅, ∃ str. ∀ rk. rk ∈ rks ∧ is_fskey(rk .key) → ¬ # str ≤ # rk .key .fs .class .class
[[CONCRETESIMPRULES : ()], [EXTRATERMS : (r -- mkfs(stringvar .class, ty, fieldvar) ')]]