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

Merge updated_enabled_cdot. #148

Open
wants to merge 36 commits into
base: main
Choose a base branch
from
Open

Merge updated_enabled_cdot. #148

wants to merge 36 commits into from

Commits on Mar 31, 2021

  1. BUG: recompute operator level info in parametrized instantiation

    Otherwise the already computed weights of an operator can
    rely on the arity of the operator before the dependence on
    parameters of the definition (`Foo(x) == INSTANCE Inner`)
    is added to the instantiated operator signature.
    
    Parametric instantiation changes the arity of operators,
    so the weights list needs to be recomputed, based on the
    arity after instantiation has been performed.
    johnyf committed Mar 31, 2021
    Configuration menu
    Copy the full SHA
    7b034c8 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    3c899a5 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    ab897dc View commit details
    Browse the repository at this point in the history
  4. TST: correctly detect end of module

    This change ensures that the testing commands
    are read after the closing horizontal rule (`=====*`)
    of the module.
    
    To do this, the nesting depth of submodules is tracked,
    by incrementing the counter `submodule_nesting_depth` when
    encountering a module opening (`-----*\s*MODULE`), and
    decrementing this counter when encountering
    a module closing (`=====*`).
    
    Commands are read after the module's end.
    Previously, commands were read after the first module closing
    (`=====*`), which results in errors in the presence
    of submodules.
    johnyf committed Mar 31, 2021
    Configuration menu
    Copy the full SHA
    e30f941 View commit details
    Browse the repository at this point in the history
  5. BUG: show "VARIABLE" for single variable,

    "VARIABLES" otherwise.
    johnyf committed Mar 31, 2021
    Configuration menu
    Copy the full SHA
    8a5b74a View commit details
    Browse the repository at this point in the history
  6. ENH: add function print_modules

    that prints the names of modules in
    a module context.
    johnyf committed Mar 31, 2021
    Configuration menu
    Copy the full SHA
    c561dbe View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    aa1f39b View commit details
    Browse the repository at this point in the history
  8. BUG: correctly shift module units when instantiating

    When instantiating inside a LET, definitions are kept,
    and other module units omitted. A negative shift is
    applied to the remaining module units. This negative shift
    should equal minus the number of hypotheses that the
    omitted module unit introduces in the context.
    
    The number of hypotheses for each module unit is
    computed by the function `M_t.hyps_of_modunit`.
    johnyf committed Mar 31, 2021
    Configuration menu
    Copy the full SHA
    09719c8 View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    4d2129e View commit details
    Browse the repository at this point in the history
  10. BUG: handle INSTANCE statements within LET

    `Module.Elab` replaces each `INSTANCE` statement
    with definitions. If the instantiated module
    extends the module `TLAPS`, then the definitions
    include backend pragmas (constructor `Bpragma`).
    johnyf committed Mar 31, 2021
    Configuration menu
    Copy the full SHA
    a4ca6ac View commit details
    Browse the repository at this point in the history
  11. Configuration menu
    Copy the full SHA
    a5dc90a View commit details
    Browse the repository at this point in the history
  12. BUG: fingerprint INSTANCE statements within LET

    `Module.Elab` replaces each `INSTANCE` statement
    with definitions. If the instantiated module
    extends the module `TLAPS`, then the definitions
    include backend pragmas (constructor `Bpragma`).
    johnyf committed Mar 31, 2021
    Configuration menu
    Copy the full SHA
    a87906f View commit details
    Browse the repository at this point in the history

Commits on Jun 2, 2021

  1. Configuration menu
    Copy the full SHA
    93f5186 View commit details
    Browse the repository at this point in the history
  2. liveness proof for EWD840 example

    muenchnerkindl authored and johnyf committed Jun 2, 2021
    Configuration menu
    Copy the full SHA
    30f1415 View commit details
    Browse the repository at this point in the history
  3. fixed typo in Peterson example

    muenchnerkindl authored and johnyf committed Jun 2, 2021
    Configuration menu
    Copy the full SHA
    017ebd8 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    737dd12 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    f47164b View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    c7ff69d View commit details
    Browse the repository at this point in the history
  7. BUG: fingerprint AutoUSE results

    This change makes fingerprints take into account
    the result of the proof directive AutoUSE.
    
    Previously, fingerprinting was done before any
    expansion of definitions, normalization, and
    automated expansion of definitions, expansion of
    ENABLED and of \cdot.
    
    This approach worked correctly for BY DEF definitions,
    because those definitions were included in the
    fingerprint as context.
    
    With this change, only for proof obligations that
    include the proof directive AutoUSE, the fingerprint
    is computed after expansion of definitions, normalization,
    automated expansion of definitions, expansion of ENABLED,
    and of \cdot. This change ensures that the proof
    obligation is fingerprinted with all automatic
    expansions of definitions applied.
    
    A test is added that catches this error.
    johnyf committed Jun 2, 2021
    Configuration menu
    Copy the full SHA
    6b49822 View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    426a200 View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    aec7bbe View commit details
    Browse the repository at this point in the history
  10. ENH: add proof directives ENABLEDrules and ENABLEDrewrites

    summary of changes
    
    - test fingerprints by running `tlapm` twice
    - add new proof directive `ENABLEDrules`
    - rewrite `ENABLEDaxioms` to remove the
      Boolean typeness assumptions
    - rewrite two proof rules that previously were in
      `ENABLEDaxioms` and now are in `ENABLEDrules`,
      to remove the Boolean typeness assumptions
    - correct soundness check for `ENABLEDrules`
      (previously for `ENABLEDaxioms`)
    - fingerprint the level correctness of proof obligations
    - revise renaming of variables in `ExpandENABLED`
    
    - removal of older implementation of `ENABLEDaxioms`
    - `ENABLEDaxioms` was not correctly collecting primed variables
    - use expression level in fingerprint of definition
    - record name of `Bpragma` in fingerprint
    - implement rewriting system for `ENABLEDrewrites`
    - add new proof directive `ENABLEDrewrites`
    - add test modules
    johnyf committed Jun 2, 2021
    Configuration menu
    Copy the full SHA
    987e425 View commit details
    Browse the repository at this point in the history
  11. fixup! fpfile changes

    These changes are for now kept as a separate
    commit, in case further rebasing is needed
    before preparing the pull request for the
    branch `update_enabled_cdot`.
    johnyf committed Jun 2, 2021
    Configuration menu
    Copy the full SHA
    70b4eaa View commit details
    Browse the repository at this point in the history
  12. Configuration menu
    Copy the full SHA
    6a4e5f8 View commit details
    Browse the repository at this point in the history
  13. Configuration menu
    Copy the full SHA
    23f6f0b View commit details
    Browse the repository at this point in the history

Commits on Jul 28, 2021

  1. BUG: correct typo

    johnyf committed Jul 28, 2021
    Configuration menu
    Copy the full SHA
    c758c25 View commit details
    Browse the repository at this point in the history

Commits on Aug 5, 2022

  1. Configuration menu
    Copy the full SHA
    ee56b3d View commit details
    Browse the repository at this point in the history

Commits on Oct 4, 2022

  1. Configuration menu
    Copy the full SHA
    a963bd3 View commit details
    Browse the repository at this point in the history

Commits on Aug 31, 2024

  1. Merge branch 'main' into updated_enabled_cdot

    Signed-off-by: Karolis Petrauskas <[email protected]>
    kape1395 committed Aug 31, 2024
    Configuration menu
    Copy the full SHA
    9c27e42 View commit details
    Browse the repository at this point in the history
  2. Print exception backtraces in LSP.

    Signed-off-by: Karolis Petrauskas <[email protected]>
    kape1395 committed Aug 31, 2024
    Configuration menu
    Copy the full SHA
    9a6cadd View commit details
    Browse the repository at this point in the history

Commits on Sep 1, 2024

  1. Proofs in examples/EWD840.tla fixed.

    Signed-off-by: Karolis Petrauskas <[email protected]>
    kape1395 committed Sep 1, 2024
    Configuration menu
    Copy the full SHA
    f002d24 View commit details
    Browse the repository at this point in the history
  2. Temporary workaround for making the LSP to work.

    Signed-off-by: Karolis Petrauskas <[email protected]>
    kape1395 committed Sep 1, 2024
    Configuration menu
    Copy the full SHA
    4f4344b View commit details
    Browse the repository at this point in the history
  3. Fix proof in examples/SimpleMutex.tla.

    Signed-off-by: Karolis Petrauskas <[email protected]>
    kape1395 committed Sep 1, 2024
    Configuration menu
    Copy the full SHA
    cfacd96 View commit details
    Browse the repository at this point in the history
  4. Fix proof in examples/SimpleEventually.tla.

    Signed-off-by: Karolis Petrauskas <[email protected]>
    kape1395 committed Sep 1, 2024
    Configuration menu
    Copy the full SHA
    77ac33f View commit details
    Browse the repository at this point in the history
  5. Properly take the obligation fingerprints in the LSP.

    Signed-off-by: Karolis Petrauskas <[email protected]>
    kape1395 committed Sep 1, 2024
    Configuration menu
    Copy the full SHA
    7f63bdd View commit details
    Browse the repository at this point in the history

Commits on Sep 11, 2024

  1. Merge remote-tracking branch 'origin/main' into updated_enabled_cdot

    Signed-off-by: Karolis Petrauskas <[email protected]>
    kape1395 committed Sep 11, 2024
    Configuration menu
    Copy the full SHA
    b12dfff View commit details
    Browse the repository at this point in the history