半代数的定义是:对于全集O的一个子集类A,称A为半代数若:
1. 空集和全集属于A,2.A在有限交运算下封闭,3.若S属于A,则S的补集是A中两两不交的有限并。
集合代数的定义是:对于全集O的子集类A,1.空集属于A,2.A在有限交运算下封闭,3.若S属于A,则S的补集属于A.
从名字上来看,既然有半代数这个名字,那么集合代数的定义肯定包含了半代数的定义,不难看出虽然集合代数只要求空集属于A,但由于3的关系,全集O也必然属于A,而若S的补属于A,S的补自然可以由它本身表示,所以自然能满足半代数的3。所以集合代数是比半代数更强的结构。
反过来看,半代数缺少了每个A中集合的补运算封闭性,但A中集合的补可以由A中集合“拼装”得到,比如把人体视作全集那么某个集合类有集合叫“头”却没有“头”的补集,但是有集合叫“四肢”、“身体”,“四肢”和“身体”的并组成了“头”的补集。这么看来半代数比之集合代数更“原始”。