PartiallyOrderedSets
AreIsomorphic
checks whether two posets are isomorphic or not
Calling Sequence
Parameters
Description
Examples
References
Compatibility
AreIsomorphic(P1,P2)
P1
-
PartiallyOrderedSet
P2
The command AreIsomorphic(P1,P2) checks whether the partially ordered sets P1 and P2 are isomorphic or not. To be more precise, let us denote by V1 (resp. V2) the underlying set of P1 (resp. P2) and by R1 (resp. R2 ) the binary relation on V defining P1 (resp. P2). The posets P1 and P2 are isomorphic whenever there exists a one-to-one map f from V1 to V2 and for any two elements a and b in V1, R1(a,b) holds if and only if R2(f(a),f(b)) holds.
Remarks
AreIsomorphic will generate and store the transitive reductions and reduction graphs of P1 and P2.
Terminology
A partially ordered set, or poset for short, is a pair (P, <=) where P is a set and <= is a partial order on P. The poset (P, <=) defines a directed graph whose vertices are the elements of P and (a,b) is a directed edge whenever a <= b holds. Conversely, a poset can be defined from a directed graph, assuming that the defined binary relation is anti-symmetric, and transitive, and, either reflexive, or irreflexive. Consequently, a poset can be given by an adjacency list or an adjacency matrix of a directed graph.
We say that two posets are equal (resp. isomorphic) whenever they are equal (resp. isomorphic) as directed graphs.
with⁡PartiallyOrderedSets:
leq≔`<=`:
lneq≔`<`:
Create a poset from a set and a non-strict partial order
U≔1,2,3:
poset3≔PartiallyOrderedSet⁡U,leq,reflexive=checktrue
poset3≔< a poset with 3 elements >
Display this poset
DrawGraph⁡poset3
Create a poset from a set and a strict partial order
poset3_1≔PartiallyOrderedSet⁡U,lneq,reflexive=useclosure
poset3_1≔< a poset with 3 elements >
DrawGraph⁡poset3_1
Check whether these two posets are equal or isomorphic
AreEqual⁡poset3,poset3_1;AreIsomorphic⁡poset3,poset3_1
true
X≔4,5,6:poset3_2≔PartiallyOrderedSet⁡X,leq,reflexive=checktrue
poset3_2≔< a poset with 3 elements >
DrawGraph⁡poset3_2
Check whether two posets are equal or isomorphic
AreEqual⁡poset3,poset3_2;AreIsomorphic⁡poset3,poset3_2
false
Create a poset from a set and a directed graph
G≔GraphTheory:-Graph⁡directed,1,2,3,4,5,6,1,1,1,2,1,3,1,4,1,5,1,6,2,2,2,4,2,6,3,3,3,5,3,6,4,4,4,6,5,5,5,6,6,6
G≔Graph 1: a directed graph with 6 vertices, 11 arcs, and 6 self-loops
poset6≔PartiallyOrderedSet⁡G
poset6≔< a poset with 6 elements >
DrawGraph⁡poset6
Create a poset from a set and an adjacency list of the transitive reduction of a partial order on that set
poset8≔PartiallyOrderedSet⁡1,2,3,4,5,6,Array⁡1,2,3,2,4,3,5,4,6,5,6,6,input=transitivereduction
poset8≔< a poset with 6 elements >
DrawGraph⁡poset8
AreEqual⁡poset6,poset8;AreIsomorphic⁡poset6,poset8
Richard P. Stanley: Enumerative Combinatorics 1. 1997, Cambridge Studies in Advanced Mathematics. Vol. 49. Cambridge University Press.
The PartiallyOrderedSets[AreIsomorphic] command was introduced in Maple 2025.
For more information on Maple 2025 changes, see Updates in Maple 2025.
See Also
PartiallyOrderedSets[AreEqual]
PartiallyOrderedSets[PartiallyOrderedSet]
PartiallyOrderedSets[ToGraph]
Download Help Document