Generalized Homomorphisms

Let S be a set of types.
Let F be a set of functions. The type of function f in F is type(f) = Sf1 -> Sf2 -> ... -> Sfk where each Sfj is chosen from S and k = k(f) depends on f.
Let T be another set of types.
Let G be another set of functions. |G| = |F|. type(g) = Tg1 -> Tg2 -> ... -> Tgk where each Tgj is chosen from S and k = k(g) depends on g.

Define a "generalized homomorphism" from G to T to be a set of two functions H, U, and a set of functions \Phi, such that:
  1. H : G -> F is one to one and onto
  2. U : T -> S -> \Phi
  3. For all \phi in \Phi where U(t, s) = \phi, \phi : t -> s
  4. If H(g) = f,
    1. k(g) = k(f) = k
    2. U(Tgk, Sfk)(g(x1, x2, ..., x(k-1))) = f(U(Tg1,Sf1)(x1), U(Tg2,Sf2)(x2), ..., U(Tg(k-1),Sf(k-1))(x(k-1)))

© Bart Parkis
Last modified:Tue May 19 19:07:52 2009