Satallax is a higher-orderautomated theorem prover. Satallax won the THF divisionof CASC-23 in 2011.
Automated Reasoning in Higher Order Logic
Let x, y, z and u be objects. Assume {{x},{x,y}}={{z},{z,u}}. Then we have y=u.
The following background is necessary to understand this theorem.
(.) Let x and y be objects. Then x=y is a proposition.
(.) ∅ is an object.
(.) Let x and y be objects. Then {x}∪y is an object.
(.) We use {x1,...,xn} as shorthand notation for the finite set with elements x1, ..., xn.
The following background is necessary for the proof.
(.) Let A and x be objects. Then x∈A is a proposition.
(.) Let φ and ψ be propositions. Then φ∨ψ is a proposition.
(.) Let x and y be objects. Let φ(x) be a proposition depending on an object x. Assume x=y and φ(x). Then we know φ(y).
(.) Let φ and ψ be propositions. Assume φ∨ψ. Let θ be a proposition. Assume φ implies θ and ψ implies θ. Then we know θ.
(.) Let x and y be objects. Assume x=y. Then we know y=x.
(.) Let x and y be objects. Let φ(x) be a proposition depending on an object x. Assume x=y and φ(y). Then we know φ(x).
(.) Let x and y be objects. Then we know y∈{x,y}.
(.) Let x, y and z be objects. Assume z∈{x,y}. Then we know z=x∨z=y.
(.) Let x, y, z and u be objects. Assume {{x},{x,y}}={{z},{z,u}}. Then we know x=z.
(.) Let x, y, z and u be objects. Assume {{x},{x,y}}={{z},{z,u}} and z=u. Then we know y=u.
(.) Let x, y and z be objects. Assume {x,y}={z}. Then we know x=y.
Claim: {z,u}={x}∨{z,u}={x,y}.
Proof of Claim: We will show {z,u}∈{{x},{x,y}}. We have {z,u}∈{{z},{z,u}}. Using this and {{x},{x,y}}={{z},{z,u}}, we are done. This completes the proof of the claim.
Consider the case in which {z,u}={x}. Thus z=u. Using this and {{x},{x,y}}={{z},{z,u}}, we conclude y=u.
Consider the case in which {z,u}={x,y}.
Claim: u=x∨u=y.
Proof of Claim: It is enough to show u∈{x,y}. We know u∈{z,u}. Using this and {z,u}={x,y}, we are done. This completes the proof of the claim.
Consider the case in which u=x. Using {{x},{x,y}}={{z},{z,u}}, it is enough to show z=u. We will show u=z. Since {{x},{x,y}}={{z},{z,u}}, we have x=z. Using this and u=x, we are done.
Consider the case in which u=y. Using this, we conclude y=u.
Click here to modify variable names (JavaScript Must Be Enabled).
Hide Background.
Test yourself on this item.
Theorem