specifications for std::vector and std::find#64
Conversation
CI summary (Details)Active Repos
|
| Repo | Job Branch | Job Commit |
|---|---|---|
| ./ | main | 7d2ee30 |
| fmdeps/BRiCk/ | main | 094eace |
| fmdeps/auto/ | main | a3e8ce2 |
| fmdeps/auto-docs/ | main | d4c3641 |
| bluerock/NOVA/ | skylabs-proof | dc3d314 |
| bluerock/bhv/ | skylabs-main | a803e73 |
| fmdeps/ci/ | main | e54841c |
| vendored/elpi/ | skylabs-master | aa4475f |
| vendored/flocq/ | skylabs-master | cf9cc84 |
| fmdeps/fm-tools/ | main | e5188db |
| psi/protos/ | main | 8fe3e7c |
| psi/backend/ | main | 0b5fea6 |
| psi/ide/ | main | 6b596cf |
| psi/data/ | main | 82cb305 |
| vendored/rocq/ | skylabs-master | 2ede3c9 |
| fmdeps/rocq-agent-toolkit/ | main | 3eed23a |
| vendored/rocq-elpi/ | skylabs-master | 103a742 |
| vendored/rocq-equations/ | skylabs-main | a8c4832 |
| vendored/rocq-ext-lib/ | skylabs-master | 94a6630 |
| vendored/rocq-iris/ | skylabs-master | 3ad4ddd |
| vendored/rocq-lsp/ | skylabs-main | a8b7272 |
| vendored/rocq-stdlib/ | skylabs-master | bc07423 |
| vendored/rocq-stdpp/ | skylabs-master | e01d802 |
| fmdeps/skylabs-fm/ | main | 06f1cd3 |
| vendored/vsrocq/ | skylabs-main | 5b4527e |
Performance
| Relative | Master | MR | Change | Filename |
|---|---|---|---|---|
| -0.00% | 127674.0 | 127674.0 | -0.0 | total |
| -0.00% | 22800.3 | 22800.3 | -0.0 | ├ translation units |
| +0.00% | 104873.7 | 104873.7 | +0.0 | └ proofs and tests |
Full Results
| Relative | Master | MR | Change | Filename |
|---|---|---|---|---|
| -0.00% | 127674.0 | 127674.0 | -0.0 | total |
| -0.00% | 22800.3 | 22800.3 | -0.0 | ├ translation units |
| +0.00% | 104873.7 | 104873.7 | +0.0 | └ proofs and tests |
gmalecha-at-skylabs
left a comment
There was a problem hiding this comment.
Looks good. We need to address the license information and a few other cosmetic things, but otherwise we should get it merged.
| (** TODO: update comment to reflect changes to this *) | ||
| Module Type CODE_SNIPPETS (U : common.UNIT). |
There was a problem hiding this comment.
This looks like it needs to be moved to the test directory?
| Module Type VECTOR := VECTOR_PREDS <+ VECTOR_SPECS. | ||
|
|
||
| Declare Module vector : VECTOR. |
There was a problem hiding this comment.
Is there a benefit to this structure over simply having things at the top-level?
There was a problem hiding this comment.
I don't think so. I'll remove it
| * This software is distributed under the terms of the BedRock Open-Source License. | ||
| * See the LICENSE-BedRock file in the repository root for details. | ||
| *) | ||
| Require Import skylabs.auto.cpp.proof. |
There was a problem hiding this comment.
Should probably modernize this to use prelude.proof.
There was a problem hiding this comment.
Yes but we should check that we can fix the proofs first.
There was a problem hiding this comment.
Actually prelude.proof, is included in prelude.test
| Section proofs. | ||
| Context `{MOD : test_cpp.module ⊧ σ}. | ||
| Import linearity auto_frac. | ||
| Import wp_path.WpPrimRSep. |
There was a problem hiding this comment.
Did we decide to deprecate this?
There was a problem hiding this comment.
There was an effort to retire it that I haven't managed to complete yet. Some array hints were tricky to adjust. We can give it another try.
| Lemma copy_assign_ok : | ||
| denoteModule module |-- copy_assign_spec. | ||
| Proof using MOD. | ||
| verify_spec. go with pick_frac. | ||
| (* errors.Errors.UNSUPPORTED.body | ||
| "wp_method_shift: defaulted methods"%pstring *) | ||
| Fail Qed. | ||
| Admitted. | ||
| Definition copy_assign_B := [LINK] copy_assign_ok. |
There was a problem hiding this comment.
If the body doesn't exist, then it doesn't seem like it should be necessary for the proof.
| Definition test_for_each_B := [LINK] test_for_each_ok. | ||
| #[local] Hint Resolve test_for_each_B : sl_opacity. | ||
|
|
||
| Lemma sum_ok : verify[ module ] sum_spec. |
There was a problem hiding this comment.
Just modernization.
| Lemma sum_ok : verify[ module ] sum_spec. | |
| Lemma sum_ok : verify[ source ] sum_spec. |
No description provided.