comprehension.oak
/#
Comprehension axioms, for properties and operations. Should look into reducing
the number of these.
Each axiom contains guards on each of its parameters, to ensure that the
property or operation being created cannot contradict itself.
#/
property2: axiom schema
for all meta p,x,q,a,φ such that not free[p,φ],
`for some p, for all x, p[x] iff q[x,a] and φ`
property2a: axiom schema
for all meta p,x,q,a,φ such that not free[p,φ],
`for some p, for all x where q[x,a], p[x] iff φ`
property11: axiom schema
for all meta p,x,y,q,r,φ such that not free[p,φ],
`for some p, for all x,y, p[x,y] iff q[x] and r[y] and φ`
property12a: axiom schema
for all meta p,x,y,q,r,a,φ such that not free[p,φ],
`for some p, for all x,y where q[x] and r[y,a], p[x,y] iff φ`
property21: axiom schema
for all meta p,x,y,q,a,r,φ such that not free[p,φ],
`for some p, for all x,y, p[x,y] iff q[x,a] and r[y] and φ`
property22: axiom schema
for all meta p,x,y,q,a,r,b,φ such that not free[p,φ],
`for some p, for all x,y, p[x,y] iff q[x,a] and r[y,b] and φ`
property22a: axiom schema
for all meta p,x,y,q,a,r,b,φ such that not free[p,φ],
`for some p, for all x,y where q[x,a] and r[y,b], p[x,y] iff φ`
property122: axiom schema
for all meta p,x,y,z,q,r,s,a,b,φ such that not free[p,φ],
`for some p, for all x,y,z,
p[x,y,z] iff q[x] and r[y,a] and s[z,b] and φ`
property122a: axiom schema
for all meta p,x,y,z,q,r,s,a,b,φ such that not free[p,φ],
`for some p, for all x,y,z where q[x] and r[y,a] and s[z,b],
p[x,y,z] iff φ`
property222: axiom schema
for all meta p,x,y,z,q,a,r,b,s,c,φ such that not free[p,φ],
`for some p, for all x,y,z,
p[x,y,z] iff q[x,a] and r[y,b] and s[z,c] and φ`
property222a: axiom schema
for all meta p,x,y,z,q,a,r,b,s,c,φ such that not free[p,φ],
`for some p, for all x,y,z where q[x,a] and r[y,b] and s[z,c],
p[x,y,z] iff φ`
property1222a: axiom schema
for all meta p,w,x,y,z,q,r,s,t,a,b,c,φ such that not free[p,φ],
`for some p, for all w,x,y,z where q[w] and r[x,a] and s[y,b] and t[z,c],
p[w,x,y,z] iff φ`
operation2: axiom
for all p,a,c,
for some f, for all x where p[x,a], f[x] = c
operation12: axiom schema
for all meta x,y,p,q,a,f,φ such that not free[f,φ],
`if for all x where p[x], for at most one y where q[y,a], φ then
for some f, for all x,y where p[x] and q[y,a], f[x] = y iff φ`
operation22: axiom schema
for all meta x,y,p,q,a,b,f,φ such that not free[f,φ],
`if for all x where p[x,a], for at most one y where q[y,b], φ then
for some f, for all x,y where p[x,a] and q[y,b], f[x] = y iff φ`
operation122: axiom schema
for all meta x,y,z,q,r,s,a,b,f,φ such that not free[f,φ],
`if for all x,y where q[x] and r[y,a],
for at most one z where s[z,b], φ
then
for some f, for all x,y,z where q[x] and r[y,a] and s[z,b],
f[x,y] = z iff φ`
operation222: axiom schema
for all meta x,y,z,q,r,s,a,b,c,f,φ such that not free[f,φ],
`if for all x,y where q[x,a] and r[y,b],
for at most one z where s[z,c], φ
then
for some f, for all x,y,z where q[x,a] and r[y,b] and s[z,c],
f[x,y] = z iff φ`
operation1222: axiom schema
for all meta w,x,y,z,q,r,s,t,a,b,c,f,φ such that not free[f,φ],
`if for all w,x,y where q[w] and r[x,a] and s[y,b],
for at most one z where t[z,c], φ
then
for some f, for all w,x,y,z where q[w] and r[x,a] and s[y,b] and t[z,c],
f[w,x,y] = z iff φ`