I'd like to prove the following argument:
Premise: ∀x SameShape(x,c)
Conclusion: ∀x Cube(x) | ∀x Tet(x) | ∀x Dodec(x)
From the following axioms
The following axioms say that any object can be exactly one of the shapes: a Tet, a Cube, or a Dodec.
The following axioms tell us that if two objects x and y are the same shape then SameShape(x,y) is true, for each of the shapes Tet, Cube, and Dodec.
The following axioms tell us that if given two objects x and y we have SameShape(x,y) is true, and we know what the shape of one of the objects is, then we know the shape of the other object.
These axioms are all pretty clear and intuitively true.
The argument to be proved also seems pretty simple, but I am not sure about the exact steps.
Here is my first attempt:
Let c be any object.
Let d be any object.
From premise 1, we infer SameShape(c,d).
From Axiom 4, we infer Tet(c) | Cube(c) | Dodec(c).
Consider each case in this disjunction.
Case 1: Tet(c)
From Axiom 10 we infer Tet(d).
& Intro: Tet(c) & Tet(d)
| Intro: (Tet(d) & Tet(c)) | (Cube(d) & Cube(c)) | (Dodec(d) & Dodec(c))
Case 2: Cube(c)
From Axiom 8 we infer Cube(d)
& Intro: Cube(c) & Cube(d)
| Intro: (Tet(d) & Tet(c)) | (Cube(d) & Cube(c)) | (Dodec(d) & Dodec(c))
Case 3: Dodec(c)
From Axiom 9 we infer Dodec(d)
& Intro: Dodec(c) & Dodec(d)
| Intro: (Tet(d) & Tet(c)) | (Cube(d) & Cube(c)) | (Dodec(d) & Dodec(c))
| Elim (Tet(d) & Tet(c)) | (Cube(d) & Cube(c)) | (Dodec(d) & Dodec(c))
∀ Elim: ∀x (Tet(x) & Tet(c)) | (Cube(x) & Cube(c)) | (Dodec(x) & Dodec(c))
∀ Elim: ∀x ∀y (Tet(x) & Tet(y)) | (Cube(x) & Cube(y)) | (Dodec(x) & Dodec(y))
Which isn't the conclusion. Is this proof incorrect?
Alternatively, I could do the following
Let c be any object.
From Axiom 4, we infer Tet(c) | Cube(c) | Dodec(c).
Consider each case in this disjunction.
Case 1: Tet(c)
Let d be any object.
From premise 1, we infer SameShape(c,d).
From Axiom 10 we infer Tet(d).
& Intro: Tet(c) & Tet(d)
∀ Elim: ∀x Tet(x) & Tet(c)
The other two cases in the disjunction are analogous and result in:
∀x Cube(x) & Cube(c)
∀x Dodec(x) & Dodec(c)
We actually end each case with a disjunction introduction:
∀x (Cube(x) & Cube(c)) | ∀x (Tet(x) & Tet(c)) | ∀x (Dodec(x) & Dodec(c))
Therefore, by disjunction elimination we infer
∀x (Cube(x) & Cube(c)) | ∀x (Tet(x) & Tet(c)) | ∀x (Dodec(x) & Dodec(c))
Then, by ∀ Elim (from when we introduced the constant c):
∀x ∀y (Cube(x) & Cube(y)) | ∀x (Tet(x) & Tet(y)) | ∀x (Dodec(x) & Dodec(y))
This looks like it is correct, but it isn't in the form that we see in the original argument.
What is the inference rule that allows me to conclude that ∀x Cube(x) | ∀x Tet(x) | ∀x Dodec(x)?