Knowing that haskell I think the pattern to turn multiparty relations to two place relations is R(a,b,c,d,e,f,g) → R(S(b,c,d,e,f,g)) → R(S(T(d,e,f,g)) … R(S(T(U(V(X(Z(g)))))))
The connection between “+2“ and 2 would then be a function of +(2)=”+2”. You migth also need =(3)=”=3“ and then you can have =3(+2(2)) = “2+2=3” and maybe a T?(“2+2=3”)=False. In another style you would set it up that only true equations could be derived. Then one of the findings would be that any instance of +2(2) could be replaced with 4 and the mappings would still hold (atleast on the T? level). Mind you “2+2” could be a different object from “4″
Knowing that haskell I think the pattern to turn multiparty relations to two place relations is R(a,b,c,d,e,f,g) → R(S(b,c,d,e,f,g)) → R(S(T(d,e,f,g)) … R(S(T(U(V(X(Z(g)))))))
The connection between “+2“ and 2 would then be a function of +(2)=”+2”. You migth also need =(3)=”=3“ and then you can have =3(+2(2)) = “2+2=3” and maybe a T?(“2+2=3”)=False. In another style you would set it up that only true equations could be derived. Then one of the findings would be that any instance of +2(2) could be replaced with 4 and the mappings would still hold (atleast on the T? level). Mind you “2+2” could be a different object from “4″