在逻辑中,术语“同态”的使用方式类似于但又略有不同于其在抽象代数中的用法。在逻辑中的用法是范畴论中“态射”的一个特例。
设 ,和
是通用语言
的结构,并设
。则
是从
到
的同态,如果它满足以下条件:
1. 对于每个常数 ,
。
2. 对于每个谓词符号 ,如果
的元数为
,则
3. 对于每个函数符号(或运算),如果
的元数为
,则对于任何
,
例如,设 和
为(有向)图(集合
是
的顶点集,而
是
的顶点集,而
是图
的边的关系表示,等等)。从
到
的同态是一个函数
,使得对于
和
的任何顶点
,
和
由有向边连接(从
到
),当且仅当顶点
和
由从
到
的有向边连接时。
另一个例子可以在有序群理论中找到。设 和
为有序群。(我们使用符号
来表示乘法逆运算。我们将省略上标
和
,并且对于任何
(或
),我们用
表示
。)在这种情况下,形式上应用我们对同态的定义表明,
是同态当且仅当它满足以下条件:
1. .
2. 对于 ,
。
3. 对于任何 ,
。
4. 对于任何 ,
当且仅当
。
(当然,这些条件可以被证明是冗余的。因此,许多教材在定义同态时,不需要保持群的单位元 (),并假设保持乘法逆运算。)
泛代数的同态是结构同态的特例,结构同态的概念也扩展了有序集和各种关系/代数结构范畴中相应的态射概念。