Did some more work, so might as well share it. I've built up some classes in python and also (re-)designed some more of the language. The two sides aren't connected yet though, so nothing working yet.
Let S be a set.
Atom (IN) (x in S)
Let P,Q be boolean.
Def (if-then) (P => Q) = (not P) or Q.
Def (iff) (P <=> Q) = (P => Q) and (Q => P).
Let P,Q be bool .
Axiom (AND) P and Q <=> Q and P.
Axiom (OR) P or Q <=> Q or P.
Axiom (ARB-AND) for all i in I, P(i) <=> for i,j in I
Axiom
Let A,B be sets.
Axiom (SET1) A < B <=> (x in A => x in B) <=> (For all x in A, x in B).
Axiom (SET2) A = B <=> (A < B and B < A)
Def (set intersection) A&B is a set such that:
x in A&B <=> (x in A and x in B).
Let I be a set.
Def (arbitrary set intersection)
&_(i in I) A_i is a set, A, such that:
a in A <=> for all i in I, a in A_i.
Notation: = &_i A_i = &A_i.
Def (arbitrary set union)
U_(i in I) A_i is a set, A, such that:
a in A <=> for some i in I, a in
---------------- one proof per page --------------
Let A,B be sets.
Prop (Set intersection is commutative.) A & B = B & A.
Proof: x in A & B <=> (x in A and x in B) (By definition of set intersection) (1)
<=> (x in B and x in A) (By axiom AND)
<=> x in B & A (Same reason as (1))
Therefore, (x in LHS => x in RHS) and conversely.
We have, (LHS < RHS and RHS < LHS) => LHS = RHS (By axiom SET2.).
QED.
--------------------------------------------------