User:Zero sharp/Maps between structures

From Wikipedia, the free encyclopedia

[edit] Maps between structures

Fix a language, L and let M and N be two L-structures. For symbols from the language, such as a constant c, let cM be the interpretation of c in M and similarly for the other classes of symbols (functions and relations).

A map j from the domain of M to the domain of N is a homomorphism if the following conditions hold:

  1. for every constant symbol c \in L, we have j(cM) = cN.
  2. for every n-ary function symbol f \in L and a_1,\ldots,a_n \in M^n, we have j(f^M(a_1,\ldots,a_n))=f^N(j(a_1),\ldots,j(a_n)),
  3. for every n-ary relation symbol R \in L and a_1,\ldots,a_n \in M^n, we have M \models R(a_1,\ldots,a_n) \Rightarrow N \models R(j(a_1),\ldots,j(a_n)),

If in addition, the map j is injective and the third condition is modified to read:

for every n-ary relation symbol R \in L and a_1,\ldots,a_n \in M^n, we have M \models R(a_1,\ldots,a_n) \Leftrightarrow N \models R(j(a_1),\ldots,j(a_n)),

then the map j is an embedding (of M into N).

Equivalent definitions of homomorphism and embedding are:

If for all atomic formulas φ and sequences of elements from M, \bar{a} = (a_1,a_2,\ldots,a_n)

M  \models \phi [\bar{a}] \Rightarrow N  \models  \phi [\bar{b}]

where \bar{b} is the image of \bar{a} under j:

\bar{b} = (b_1,b_2,\ldots,b_n) = (j(a_1),j(a_2),\ldots,j(a_n)) = j(\bar{a})

then j is a homomorphism. If instead:

M  \models \phi [\bar{a}] \Leftrightarrow N  \models  \phi [\bar{b}]

then j is an embedding.