集合论中已知关系r ∈ A ↔ B,如何获取集合A、B?是否可行?
从二元关系r还原集合A、B的可行性分析
结论先行
仅靠关系 r ∈ A ↔ B(即r是A到B的二元关系,r ⊆ A×B),不可能精确还原原始集合A和B,只能得到二者的子集:
- 能确定A的子集:r的定义域
dom(r) = { x | ∃y, (x,y) ∈ r }——也就是r里所有有序对的第一个元素组成的集合 - 能确定B的子集:r的值域
ran(r) = { y | ∃x, (x,y) ∈ r }——也就是r里所有有序对的第二个元素组成的集合
为什么不行?
二元关系的定义是r是A×B的子集,但A中完全可以存在从未在r的有序对里出现过的元素(比如A是全体整数,r只包含(1,2),(3,4),那A里的0、5等元素都不在r的定义域里),同理B也可能有未被r关联的元素。仅通过r本身,根本没法发现这些“没参与关系”的元素,自然还原不了原始A和B。
怎么才能达成目标?
如果一定要得到和原始A、B一致的集合,必须补充额外条件:
- 若r是满射关系:B中每个元素都在r的值域里,此时
ran(r) = B;如果r同时是双射(单射+满射),那dom(r) = A且ran(r) = B - 若有外部信息明确给出A或B的范围(比如A被定义为某个已知全集的子集),可以结合r的定义域/值域和外部信息锁定A、B
内容的提问来源于stack exchange,提问作者PythonLee
相关产品推荐
相关产品推荐

