summaryrefslogtreecommitdiff
path: root/library
diff options
context:
space:
mode:
authoradelon <22380201+adelon@users.noreply.github.com>2025-07-16 12:36:32 +0200
committeradelon <22380201+adelon@users.noreply.github.com>2025-07-16 12:36:32 +0200
commit9aac1a22c4ff4b4be16800b86e34a94d358b0deb (patch)
tree4874bcad55c1a40d8776e367b1bba0ad6c80f46e /library
parent92efa0fe16152c0f42cb9d05d6ef127955b03a18 (diff)
Add quantified calcs and relax tokenization
Use an `\iff`-calc to speed up `union_as_unions`. Also remove `in_implies_neq` which seems to interact badly with the choice axiom used by superposition-based proofs like Vampire in cut-down problems.
Diffstat (limited to 'library')
-rw-r--r--library/ordinal.tex9
-rw-r--r--library/set.tex26
-rw-r--r--library/set/regularity.tex4
3 files changed, 10 insertions, 29 deletions
diff --git a/library/ordinal.tex b/library/ordinal.tex
index c092fa8..f978257 100644
--- a/library/ordinal.tex
+++ b/library/ordinal.tex
@@ -235,13 +235,6 @@ To show that \in\ is a strict total order it only remains to show that \in\ is c
% Goal: ordinal(fgamma)=>(elem(falpha,fgamma)|elem(fgamma,falpha)|falpha=fgamma))
%
Assume $\gamma$ is an ordinal.
- % Goal:
- % elem(falpha,fgamma)|elem(fgamma,falpha)|falpha=fgamma
- %
- % Original Vampire proof:
- % Follows by \cref{setext,transitiveset,ordinal,in_implies_neq,prec_is_ordinal,in_asymmetric}.
- %
- % Pruned proof:
Follows by \cref{setext,transitiveset,ordinal}.
\end{subproof}
\end{proof}
@@ -489,7 +482,7 @@ Then $\alpha\subseteq\beta$.
\end{proposition}
\begin{proof}
% Vampire proof:
- Follows by \cref{inters_of_ordinals_is_ordinal,in_implies_neq,inters_iff_forall,ordinal_subseteq_implies_elem_or_eq,inters_subseteq_elem}.
+ Follows by \cref{inters_of_ordinals_is_ordinal,in_irrefl,inters_iff_forall,ordinal_subseteq_implies_elem_or_eq,inters_subseteq_elem}.
\end{proof}
\begin{proposition}\label{inters_of_ordinals_is_minimal}
diff --git a/library/set.tex b/library/set.tex
index 1f7a76a..d964ce7 100644
--- a/library/set.tex
+++ b/library/set.tex
@@ -124,16 +124,6 @@ which applies it to goals of the form “$A = B$” and “$A \neq B$”.
Suppose $A\neq\emptyset$. Then $A$ is inhabited.
\end{proposition}
-%\begin{proposition}\label{empty_iff_emptyset}
-% $A$ is empty iff $A = \emptyset$.
-%\end{proposition}
-
-
-\begin{proposition}%
-\label{empty_eq}
- If $x$ and $y$ are empty, then $x = y$.
-\end{proposition}
-
\begin{proposition}\label{emptyset_subseteq}
For all $a$ we have $\emptyset \subseteq a$.
\end{proposition}
@@ -351,17 +341,19 @@ The $\operatorname{\textsf{cons}}$ operation is determined by the following axio
If $c\in B$, then $c\in A\union B$.
\end{proposition}
-% TODO SLOW
\begin{proposition}\label{union_as_unions}
$\unions{\{x,y\}} = x\union y$.
\end{proposition}
\begin{proof}
- %For all z we have
- %\begin{align*}
- % z\in \unions{\{x,y\}}
- % &\iff \exists Z\in\{x,y\}. z\in Z
- %\end{align*}
- Follows by set extensionality.
+ For all $z$ we have
+ \begin{align*}
+ z\in \unions{\{x,y\}}
+ &\iff \exists Z\in\{x,y\}. z\in Z
+ &\iff z\in x \lor z\in y
+ &\iff z\in x\union y.
+ \end{align*}
+ Follows by \cref{setext}.
+ %Follows by set extensionality.
\end{proof}
\begin{proposition}[Commutativity of union]%
diff --git a/library/set/regularity.tex b/library/set/regularity.tex
index 068d6a8..10f4a1f 100644
--- a/library/set/regularity.tex
+++ b/library/set/regularity.tex
@@ -59,10 +59,6 @@
Straightforward.
\end{proof}
-\begin{proposition}\label{in_implies_neq}
- If $a\in A$, then $a\neq A$.
-\end{proposition}
-
\begin{proposition}\label{in_asymmetric}
For all sets $a, b$ such that $a\in b$ we have $b\notin a$.
\end{proposition}