Remove loops
x ≤ x
Every reflexive pair is implied and is not drawn.
Private by design: your elements, relations, diagram, and downloads stay on this device. This tool does not upload or save them.
A partially ordered set is a set P with a relation ≤ that is reflexive, antisymmetric, and transitive. A Hasse diagram keeps only the relation’s covers, so it is the transitive reduction of the strict part of a finite partial order.
x ≤ x
Every reflexive pair is implied and is not drawn.
x < z < y ⇒ omit x—y
A direct line is unnecessary when an intermediate element supplies an upward path.
x ≺ y ⇔ x < y and no x < z < y
Each remaining lower-to-higher pair becomes an undirected line.
Upward paths carry the meaning: x ≤ y when x = y or there is an upward path from x to y. Two nodes are incomparable when neither has an upward path to the other.
For {1,2,3,6,12} ordered by divisibility, the covers are 1≺2, 1≺3, 2≺6, 3≺6, 6≺12. The pair 1≤12 is omitted because it follows along an upward path.
For a power set ordered by ⊆, a subset is covered by another when the higher set contains exactly one additional element. The resulting Boolean lattice has the empty set at the bottom.
A finite chain such as a<b<c<d produces one vertical path. Only consecutive comparisons are covers.
If no distinct elements are comparable, the diagram has isolated nodes on one level. Every element is both minimal and maximal.
Element labels are case-sensitive. Separate them with commas, semicolons, or new lines. Enter one pair per line using (x,y), [x,y], x,y, x -> y, or x → y. The first element is lower and the second is higher. Every endpoint must appear in the Elements field.
Complete partial order mode expects all relation pairs, including (x,x) and comparisons implied by transitivity. It reports an exact witness if reflexivity, antisymmetry, or transitivity fails. Cover relations mode expects only strict immediate comparisons; it rejects loops and directed cycles, then forms their reflexive transitive closure. Redundant input edges are accepted but removed from the displayed cover set.
Levels are assigned by longest upward paths from minimal elements. This produces a valid lower-to-higher drawing but not a unique diagram: nodes within a level may be rearranged without changing the poset. Crossing lines do not add comparisons.
The generator supports up to 80 elements and 10,000 nonempty pair lines. Validation and transitive reduction use bounded Boolean matrices, making the work deterministic while preventing accidental extreme input from freezing the page.
Definitions and construction rules follow Mathematics LibreTexts, “Partially Ordered Sets”: reflexive and transitive edges are omitted, and greater elements are placed above lesser elements.
Calculation note: chains, antichains, divisibility, multiple minima/maxima, redundant covers, missing reflexive pairs, failed transitivity, antisymmetry violations, cycles, duplicates, empty input, and limit cases checked by the Starlight Tools editorial team. Last reviewed: .
It shows the cover relations of a finite poset. Reflexive loops, arrowheads, and comparisons implied by longer upward paths are omitted.
The element y covers x when x<y and there is no different z with x<z<y.
Either works. Choose Complete partial order for all reflexive and transitive relation pairs. Choose Cover relations only when entering the lines you want as immediate lower-to-higher comparisons.
Complete mode requires a reflexive, antisymmetric, transitive relation. Cover mode requires a strict acyclic graph. The error message gives a concrete pair or chain that violates the selected rules.
Only when there is an upward path between the nodes. The layout places greater nodes above lesser ones, but vertical position by itself does not make two otherwise disconnected nodes comparable.
Yes. “Minimal” does not mean one least element, and “maximal” does not mean one greatest element. The diagram highlights every minimal and maximal node.
No. Parsing, validation, reduction, layout, copying, and file downloads all happen locally in your browser.