Skip to content

Commit a07548f

Browse files
more detailed proof of one step in FunctionTheorems_proofs
Signed-off-by: Stephan Merz <[email protected]>
1 parent 3df34c3 commit a07548f

File tree

1 file changed

+8
-3
lines changed

1 file changed

+8
-3
lines changed

library/FunctionTheorems_proofs.tla

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -922,9 +922,14 @@ THEOREM Fun_NatBijAddElem ==
922922
<1>4. \A i,j \in 1..m : F[i] = F[j] => i = j BY <1>1 DEF Bijection, Injection, IsInjective
923923

924924
<1>. DEFINE G == [i \in 1..m+1 |-> IF i <= m THEN F[i] ELSE x]
925-
<1>10. G \in [1..m+1 -> S \cup {x}] BY SMT, <1>2
925+
<1>10. G \in [1..m+1 -> S \cup {x}] BY <1>2
926926
<1>20. ASSUME NEW t \in S \cup {x} PROVE \E i \in 1..m+1 : G[i] = t
927-
BY <1>3, Z3
927+
\* BY <1>3 \* fails on some installations
928+
<2>1. CASE t \in S
929+
BY <1>3
930+
<2>2. CASE t = x
931+
BY <2>2, m+1 \in 1 .. m+1
932+
<2>. QED BY <2>1, <2>2
928933
<1>30. ASSUME NEW i \in 1..m+1, NEW j \in 1..m+1, G[i] = G[j] PROVE i = j
929934
BY <1>2, <1>4, <1>30
930935
<1>40. G \in Bijection(1..m+1, S \cup {x})
@@ -958,7 +963,7 @@ THEOREM Fun_NatBijSubElem ==
958963

959964
=============================================================================
960965
\* Modification History
961-
\* Last modified Fri Jun 13 14:51:49 CEST 2025 by merz
966+
\* Last modified Wed Jun 18 16:03:39 CEST 2025 by merz
962967
\* Last modified Tue Jun 11 12:30:05 CEST 2013 by bhargav
963968
\* Last modified Fri May 31 15:27:41 CEST 2013 by bhargav
964969
\* Last modified Fri May 03 12:55:32 PDT 2013 by tomr

0 commit comments

Comments
 (0)