One of the two sequents to be connected.
The other of the two sequents to be connected.
A sequent of lists of indices such that for each index i of lowerSequent, parentsSequent(i) is the list of indices of the parents of i in upperSequent.
Concatenates two OccConnectors.
Concatenates two OccConnectors.
The type of that.
An OccConnector. upperSequent of this must have the same dimensions as lowerSequent of that.
An OccConnector that connects the lower sequent of this with the upper sequent of that.
Adds a child/parent pair to an OccConnector.
Adds a child/parent pair to an OccConnector.
An index of lowerSequent.
An index of upperSequent.
A new OccConnector in which parents(child) contains parent.
Forms the union of two OccConnectors.
Forms the union of two OccConnectors.
The type of B.
An OccConnector. Must have the same upper and lower sequent as this.
A new OccConnector o such that for any i, o.parents(i) = this.parents(i) ∪ that.parents(i).
Given a SequentIndex for the upper sequent, this returns the child of that occurrence in the lower sequent (if there is exactly one).
Given a SequentIndex for the upper sequent, this returns the child of that occurrence in the lower sequent (if there is exactly one).
An index of upperSequent.
The unique child of idx.
Given a SequentIndex for the upper sequent, this returns the list of children of that occurrence in the lower sequent (if defined).
Given a SequentIndex for the upper sequent, this returns the list of children of that occurrence in the lower sequent (if defined).
An index of upperSequent.
The list of children of idx.
Analogous to parentsSequent, but in the other direction.
Analogous to parentsSequent, but in the other direction.
A sequent of lists of indices such that for each index i of upperSequent, childrenSequent(i) is the list of indices of the children of i in lowerSequent.
Inverts an OccConnector.
Inverts an OccConnector.
This OccConnector with its lower and upper sequents (and parents and children methods) switched around.
One of the two sequents to be connected.
Given a sequent lowerTs of the same size as the lower sequent, return a sequent of the same size as the upper sequent that contains the unique parent of the Ts in lowerTs, or default otherwise.
Given a SequentIndex for the lower sequent, this returns the parent of that occurrence in the upper sequent (if there is exactly one).
Given a SequentIndex for the lower sequent, this returns the parent of that occurrence in the upper sequent (if there is exactly one).
An index of lowerSequent.
The unique parent of idx.
Given a sequent lowerTs of the same size as the lower sequent, return a sequent of the same size as the upper sequent that contains the parents of the Ts in lowerTs.
Given a sequent lowerTs of the same size as the lower sequent, return a sequent of the same size as the upper sequent that contains the parents of the Ts in lowerTs.
If we call the returned sequent upperTs, then lowerTs(i) in upperTs(j) for all j in parents(i).
The intended use-case is that lowerTs is a sequent of labels for the formulas in the lower sequent. parents(lowerTs) will then contain the correct labels for the formulas in the upper sequent.
Given a SequentIndex for the lower sequent, this returns the list of parents of that occurrence in the upper sequent (if defined).
Given a SequentIndex for the lower sequent, this returns the list of parents of that occurrence in the upper sequent (if defined).
An index of lowerSequent.
The list of parents of idx.
A sequent of lists of indices such that for each index i of lowerSequent, parentsSequent(i) is the list of indices of the parents of i in upperSequent.
The other of the two sequents to be connected.
(occConnector: any2stringadd[OccConnector[A]]).+(other)
This class models the connection of formula occurrences between two sequents in a proof.
The most basic use case is that of connecting the conclusion of an LK inference with one of the premises. This is the origin of the names "lowerSequent" and "upperSequent".
The type of sequents that this connects.
One of the two sequents to be connected.
The other of the two sequents to be connected.
A sequent of lists of indices such that for each index i of lowerSequent, parentsSequent(i) is the list of indices of the parents of i in upperSequent.