在抽象代数(abstract algebra)中,同构(isomorphism)指的是一个保持结构的双射(bijection)。在更一般的范畴论语言中,同构指的是一个态射,且存在另一个态射,使得两者的复合是一个恒等态射。