Skip to content

Prove simple kvirt area obligations - #739

Merged
Marsman1996 merged 6 commits into
asterinas:mainfrom
DID-Lab-SZU:prove/kvirt-area-simple-proofs
Sep 14, 2026
Merged

Marsman1996 merged 6 commits into
asterinas:mainfrom
DID-Lab-SZU:prove/kvirt-area-simple-proofs

Conversation

@DID-Lab-SZU

Copy link
Copy Markdown
Collaborator

No description provided.

Comment thread ostd/src/mm/kspace/kvirt_area.rs Outdated
DID-Lab-SZU and others added 4 commits September 7, 2026 13:53
Resolve conflicts with upstream proof API updates while retaining the removal of redundant proof blocks and the proof replacing the range-end assumption.

Use verus_spec for the range return contract requested in PR asterinas#739. The method was already verified; the contract exposes its exact result to callers. No additional executable changes relative to main.

Validation: focused kvirt_area verification (14 verified, 0 errors), full make, verusfmt --edition 2024 --check on kvirt_area.rs, and git diff --check pass. make fmt formats the target but skips seven other files due to existing formatter parsing failures.
@rikosellic

Copy link
Copy Markdown
Collaborator

LGTM, please merge the latest main.

@rikosellic

Copy link
Copy Markdown
Collaborator

/verify-perf

@github-actions

Copy link
Copy Markdown

Verification cost

PR /verify-perf: this PR's merge ref (5b0e67e73380169a1b308c8491cc920590379486) vs last recorded main (bc7200b7a8e3d65c33e072f671a2cb1c2fe9bbc8).

Verus verification cost: before (previous main) vs after (new main)

metric before after Δ
verified 4,081 4,081 +0
errors 0 0 +0
total wall-time 202,704 ms 247,906 ms +45,202 ms (+22.3%)
total smt-run 281,467 ms 391,290 ms +109,823 ms (+39.0%)
total rlimit 1,038,206,533 1,038,072,806 -133,727 (-0.0%)

per-module smt-run rlimit (top 15)

module before rlimit after rlimit Δ rlimit
mm::page_table::cursor 333,202,113 333,202,113 +0 (+0.0%)
specs::mm::page_table::cursor::cursor_steps 85,126,605 85,126,605 +0 (+0.0%)
specs::mm::page_table::cursor::mapping_set_lemmas 0 63,643,368 +63,643,368 (+0.0%)
specs::mm::embedding 51,152,450 0 -51,152,450 (-100.0%)
arithmetic::internals::div_internals 13,249,888 13,249,888 +0 (+0.0%)
seq_lib 9,455,652 9,455,652 +0 (+0.0%)
utf8 5,154,488 5,154,488 +0 (+0.0%)
temporal_logic::rules 3,716,957 3,716,957 +0 (+0.0%)
ghost_tree 2,004,845 2,004,845 +0 (+0.0%)
resource::ghost_resource::csum 1,499,192 1,499,192 +0 (+0.0%)

rlimit is deterministic across runs; wall-time / smt-run have run-to-run jitter. Negative rlimit = improvement.

@rikosellic

Copy link
Copy Markdown
Collaborator

Thanks for your contributions!

@Marsman1996 Marsman1996 left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM!

@Marsman1996
Marsman1996 merged commit 4576a97 into asterinas:main Sep 14, 2026
6 of 7 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants