At my university, the course in logic and set theory develops propositional logic while assuming a notion of a set, which I find dissatisfying because we only the naive notion of a set at that point, which has serious problems. So I'm trying to write my own notes about it, and I can state the axioms of predicate logic without a notion of a set. The problem is I'm finding it hard to make many syntactic deductions from the axioms because I can't appeal to valuations and the completeness theorem. To be clear, the axioms I'm using are
- For any formulae $p$ and $q$, $p\implies(q\implies p)$.
- For any formulae $p$, $q$ and $r$, $(p\implies(q\implies r))\implies((p\implies q)\implies(p\implies r))$.
- For any formula $p$, $\neg(\neg p))\implies p$.
There are also the other axioms that deal with variables, but they aren't relevant for now. The deduction rule I'm using is modus ponens. There's also generalisation, but it isn't relevant for what I'm trying to do at the moment. So I've managed to prove that $\{p\implies q,q\implies r\}\vdash p\implies r$. You might say that I'm using a notion of a set here, but I'm really not; the notation is just short-hand for saying "I can write a proof of $p\implies r$ from the axioms along with the formulae $p\implies q$ and $q\implies r$". I've also proven that $\vdash p\implies p$ and a special case of the deduction theorem: $\vdash p\implies q$ if and only if $\{p\}\vdash q$.
Now I want to prove the normal properties one would expect the logical system to have, such as $\{p\}\vdash \neg(\neg p)$, and $\{a\implies b\}\vdash\{(\neg b)\implies(\neg a)\}$, and $\{a,b\}\vdash a\land b$, but I am stuck. As I mentioned in the beginning, I can't appeal to valuations since I can't define what a function is, so the completeness theorem is out, and I just need to prove syntactic implication directly. I would appreciate any help.
I suppose I should be explicit about my definitions of $\neg$ and $\land$ in case there are multiple conventions. I'm defining $\neg a$ to be $a\implies\bot$ and $a\land b$ to be $\neg(a\implies(\neg b))$.