| st ⊆ st1, class+∃(str, st[r -- _type] .type .class), is_obj(r, st) ⊦ class+∃(str, st1[r -- _type] .type .class) ∧ ¬ is_abstract(st1[r -- _type] .type .class) ∧ is_obj(r, st1), is_abstract(st[r -- _type] .type .class) |
⊦ st ⊆ st1 ∧ is_obj(r, st) → is_obj(r, st1)
st ⊆ st1, class+∃(str, st[r -- _type] .type .class), is_obj(r, st) ⊦ is_abstract(st[r -- _type] .type .class), class+∃(str, st1[r -- _type] .type .class) ∧ ¬ is_abstract(st1[r -- _type] .type .class)
[[CONCRETESIMPRULES : ()]]