• Top
    • Documentation
    • Books
    • Boolean-reasoning
    • Debugging
    • Projects
    • Std
    • Proof-automation
    • Macro-libraries
    • ACL2
      • Theories
      • Rule-classes
      • Proof-builder
      • Recursion-and-induction
      • Hons-and-memoization
      • Events
      • Parallelism
      • History
      • Programming
      • Real
      • Start-here
      • Debugging
      • Miscellaneous
      • Output-controls
        • With-output
        • Summary
        • Set-inhibit-output-lst
        • Set-gag-mode
        • Goal-spec
        • Set-warnings-as-errors
        • Saving-event-data
        • Pso
        • Finalize-event-user
        • Set-inhibit-er
        • Checkpoint-list
        • Set-inhibit-warnings
        • Get-event-data
        • Set-inhibited-summary-types
        • Set-print-clause-ids
        • Set-let*-abstractionp
        • Initialize-event-user
        • Gag-mode
        • Set-raw-proof-format
        • Checkpoint-list-pretty
          • Psof
          • Set-raw-warning-format
          • Toggle-inhibit-warning
          • Toggle-inhibit-er
          • Warnings
          • Show-checkpoint-list
          • Wof
          • Psog
          • Checkpoint-info-list
          • Pso!
          • Toggle-inhibit-warning!
          • Set-duplicate-keys-action!
          • Toggle-inhibit-er!
          • Set-inhibit-warnings!
          • Set-inhibit-er!
        • Macros
        • Interfacing-tools
      • Interfacing-tools
      • Hardware-verification
      • Software-verification
      • Math
      • Testing-utilities
    • Kestrel-utilities
    • Output-controls

    Checkpoint-list-pretty

    Return prover key checkpoint goals programmatically.

    See checkpoint-list for relevant background and related utilities. Here we explain only how checkpoint-list-pretty differs from checkpoint-list.

    Recall that checkpoint-list returns a list of clauses or the keyword :UNAVAILABLE. The corresponding value (checkpoint-list-pretty top-p state) is obtained by replacing each such clause by a corresponding untranslated term, which is the goal displayed during output from the corresponding failed proof. For a clause with only one member, that is simply the untranslation of that member. Otherwise the clause is a list (t0 ... tn), in which case the corresponding untranslated term is an implication (implies p q) , where p is formed by conjoining the untranslation the negations of the ti for each i < n, and q is the untranslation of tn.

    Remarks.

    • Untranslation is sensitive to let* abstraction; see set-let*-abstractionp.
    • Unlike functions checkpoint-list and checkpoint-info-list, which are guard-verified logic-mode functions, checkpoint-list-pretty is a program-mode function.