let X be StackAlgebra; for s, s1 being stack of X
for e being Element of X holds
( ( push (e,s) in coset s1 implies s in coset s1 ) & ( not emp s & pop s in coset s1 implies s in coset s1 ) )
let s, s1 be stack of X; for e being Element of X holds
( ( push (e,s) in coset s1 implies s in coset s1 ) & ( not emp s & pop s in coset s1 implies s in coset s1 ) )
let e be Element of X; ( ( push (e,s) in coset s1 implies s in coset s1 ) & ( not emp s & pop s in coset s1 implies s in coset s1 ) )
( pop (push (e,s)) = s & not emp push (e,s) )
by Def11, Def12;
hence
( push (e,s) in coset s1 implies s in coset s1 )
by Def17; ( not emp s & pop s in coset s1 implies s in coset s1 )
assume
not emp s
; ( not pop s in coset s1 or s in coset s1 )
then
push ((top s),(pop s)) = s
by Def9;
hence
( not pop s in coset s1 or s in coset s1 )
by Def17; verum