Skip to content

proofs(coq): restate mkdir_two_dirs_reversible as LIFO sequence (admit #1 of 3 from #55) #56

Description

@hyperpolymath

Background

PR #55 closed the build-oracle cascade (closes #49) but introduced 3 documented admits with explicit model-gap notes. This is the smallest of the three to close.

Admit

proofs/coq/filesystem_composition.v:611Example mkdir_two_dirs_reversible

Closure path

The example as stated:

apply_sequence (reverse_sequence [OpMkdir p1; OpMkdir p2]) (apply_sequence [OpMkdir p1; OpMkdir p2] fs) = fs

reverses with non-LIFO rmdir p1; rmdir p2 order — the LIFO order is rmdir p2; rmdir p1. The general two_op_sequence_reversible lemma can only discharge the LIFO case.

Restate as LIFO — change the example to take the sequence [OpMkdir p2; OpMkdir p1] so the reverse [OpRmdir p1; OpRmdir p2] matches. Trivial restatement; the underlying theorem is true for LIFO.

OR: prove a new reverse_sequence_definition lemma showing reverse_sequence [op1; op2] = [reverse_op op2; reverse_op op1] and chase through.

Refs

🤖 Filed from PR #55 closure

Activity

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions