| st[a, d].min ∈ st, st.min < st[a, d].min ⊦ st = ∅, st[a, d].min = st.min, a = st[a, d].min |
st[a, d].min ∈ st, st.keys.min < st[a, d].min, st.keys.min ∈ st ⊦ a = st[a, d].min, st = ∅, st[a, d].min = st.keys.min
Used simplifier rules: min-def: ⊦ st ≠ ∅ → st.min = st.keys.min;%Min-in: ⊦ st ≠ ∅ → st.min ∈ st;%Min-min: ⊦ a ∈ st → ¬ a < st.min;%inf: ⊦ a ∈ st → a ∈ st.keys;%Keys: ⊦ a ∈ st.keys ↔ a ∈ st;%irreflexivity: ⊦ ¬ a < a; from specification oelem