Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

suggested additions / changes for SequencesExt #28

Merged
merged 1 commit into from
Dec 30, 2020
Merged

suggested additions / changes for SequencesExt #28

merged 1 commit into from
Dec 30, 2020

Conversation

muenchnerkindl
Copy link
Contributor

I added / strengthened a few lemmas in SequencesExtTheorems. I also suggest moving the operator IsInjective to Functions.tla where it really seems to belong (but what does this mean for the Java override?). I also copied the new lemmas to the TLAPS modules. We could therefore retire SequencesExtTheorems from CommunityModules (and rename SequenceOps to SequenceExt in the TLAPS library).

@muenchnerkindl muenchnerkindl requested a review from lemmy December 27, 2020 08:46
@lemmy
Copy link
Member

lemmy commented Dec 28, 2020

I added / strengthened a few lemmas in SequencesExtTheorems. I also suggest moving the operator IsInjective to Functions.tla where it really seems to belong (but what does this mean for the Java override?). I also copied the new lemmas to the TLAPS modules. We could therefore retire SequencesExtTheorems from CommunityModules (and rename SequenceOps to SequenceExt in the TLAPS library).

Agreed, IsInjective should move to Functions.tla. I will move the Java module override for IsInjective. What's going to happen to Functions.tla in TLAPS?

Since the CommunityModules are now part of the Toolbox, we should probably have the compatibility with TLAPS figured out by then (whenever that is).

@muenchnerkindl
Copy link
Contributor Author

I made the proposed change to Functions.tla in the TLAPS library and also copied SequencesExt.tla there (and renamed SequenceOpTheorems[_proofs] to SequencesExtTheorems[_proofs]). While doing so, I noticed that SequencesExt in CommunityModules misses the Cons operator:

Cons(elt, seq) ==
()
(
The sequence formed by prepending elt to seq. )
(
)
<> \o seq

I suggest adding it to the community module because it is a useful in proofs: Cons/Last/Front are the counterparts to Append/Head/Tail from the standard Sequences module.

Once the Community Modules are officially part of the Toolbox distribution and in the search path, we'll remove Functions and SequencesExt from the TLAPS library, but keep the corresponding theorem library modules.

@lemmy lemmy force-pushed the seqext branch 2 times, most recently from 6249ce0 to 6c4c58a Compare December 29, 2020 21:50
@lemmy
Copy link
Member

lemmy commented Dec 29, 2020

I've added Cons and moved the Java module override. What remains broken is the proof part. Should we just delete SequencesExtTheorems_proofs.tla & SequencesExtTheorems.tla and disable the TLAPS Github action step?

@muenchnerkindl
Copy link
Contributor Author

I suggest deleting the modules containing proofs from Community Modules, as they are included in the more comprehensive proof modules in the TLAPS standard library.

- Add SequencesExt!Cons operator
- Move SequencesExt!IsInjective to Functions!IsInjective

[Refactor]
@lemmy lemmy merged commit 9017c0d into master Dec 30, 2020
@lemmy lemmy deleted the seqext branch December 30, 2020 16:43
@lemmy
Copy link
Member

lemmy commented Sep 19, 2024

Corresponding TLAPM pull requeset: tlaplus/tlapm#27

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

Successfully merging this pull request may close these issues.

2 participants