(def-theorem cut-interval-at-left
"forall(x,y,z:zz, x<z implies ((x<=y and y<=z) iff (y=x or (x+1<=y and y<=z))))"
(proof
(
direct-and-antecedent-inference-strategy
simplify
simplify
simplify
simplify
))
(theory h-o-real-arithmetic))
(def-theorem trivial-interval
"forall(x,y,z:zz, x=z implies ((x<=y and y<=z) iff y=x))"
(proof
(
direct-and-antecedent-inference-strategy
simplify
simplify
simplify
))
(theory h-o-real-arithmetic))
(def-compound-macete
decompose-interval
(series
(repeat cut-interval-at-left)
trivial-interval
simplify))