Structured explanation for one universe-constraint solver result.
Summary
Types
@type rule() ::
:reflexive
| :zero
| :closed
| :succ
| :succ_right
| :max_upper
| :max_left
| :max_right
| :none
@type status() :: :solved | :unsolved
@type t() :: %Theoria.Level.Solver.Explanation{ constraint: Theoria.Level.Constraint.t(), rule: rule(), status: status() }