ACL2 Sidekick

| ACL2 Sidekick
extreme beta

### Welcome!

The ACL2 Sidekick extends ACL2 with many graphical capabilities. It lets you browse through your session, profile slow proofs, analyze your theory, and inspect things right from your web browser.

#### Tools

:session | Session Viewer Explore the history of your ACL2 session See the effects of commands
:bozo | Proof Profiler See what the prover is doing Identify slow rules
:lint | Theory Linter Identify conflicting and redundant rules
:explore | Proof Explorer Carry out proofs interactively
:show | Show Anything See documentation, properties, disassembly, ...

#### Development Notes

Warning: this is highly experimental software that may have serious bugs. For updates or to submit any bug reports or suggestions, please see the github project.

General wishlist

- Some kind of locking mechanism for access to things like ens.
- Better s-expression display: clickable function names that lead to the lookup page.
- Current :pcb display is terrible; show how the macros expand, add links to lookup page, etc.
- Develop help page that gets triggered by failed proofs: try counterexample generation, type-like analysis, syntax highlighting to point out the different arg, etc.

#### Miscellaneous Ideas

History-management.lisp has functions like `print-time-summary`. If we plugged into that and associated times with events/commands in a sensible way, then we could use the information to annotate the session history with how long everything took, sort by long-taking events, etc. Similar for `print-steps-summary`.

It also has things like `print-warnings-summary`. We could perhaps similarly associate warnings with events, and then be able t graphically show which events had warnings.

It also has `print-rules-summary`. If we associated events with the rules that were used, we could maybe cross-reference that against the rules introduced by commands, to be able to say, "show me where this theorem gets used later in my file".

Is there something sensible we can do with proof-supporters?