The cut disjoined command introduces a new predicate. It is applicable to any existing predicate, and causes the conjunction of the new predicate and its negation to be disjoined with the inspected predicate.
p2 | ![]() | (p1 ![]() ![]() ![]() |
The new predicate p1 can be either keyed-in by the user into a dialogue box using the same mark-up as used in the specification, or if a predicate with identical textual appearance is in the same window, that predicate can be crossed. The new predicate p1 must be type-correct in the environment of the inspected predicate. In the dialogue box case, any previous response will still be there and can be reused or revised.
See also the cut conjoined and lemma and cut apart commands.
"cut disjoined" "p1" p2
This example applies the cut disjoined command to the predicate p2 to introduce the predicate given by ``p1''. If the string argument is omitted from the tactic, it will be prompted for using a dialogue box.