There is a newer version of the record available.

Published January 5, 2024 | Version 0.1
Software Open

Artifact for Forge: A Tool and Language for Teaching Formal Methods

Description

Good morning!

This is the artifact for oopsla'24 paper #76:

 Forge: A Tool and Language for Teaching Formal Methods

The purpose of this artifact is to show that Forge works as advertised. To that end, we provide instructions for installing Forge (similar to what our students see), links to the documentation, and code from the paper.

Artifact Contents

  1. `doc/`: local copy of Forge documentation
  2. `src/`: local copy of Forge source code
  3. `evaluation/`: surveys, scripts, and some data from the evaluation
  4. `README.md`: overview
  5. `f2_ttt.frg`: example of `#lang froglet`
  6. `f3_nodes.frg`: example of `#lang forge` (relational Forge)
  7. `f4_counter.frg`: example of `#lang forge/temporal`
  8. `f5/`: model and visualization for a crypto protocol
  9. `f6/`: model and visualization for a river-crossing puzzle
  10. `f7/`: model and visualization for network reachability
  11. `f8_testing.frg`: examples of testing constructs
  12. `f9_core.rkt`: example of `#lang forge/core`
  13. `queens/`: model and visualization for the N queens problem
  14. `borrow-newt.pdf` : slides from a student project presentation
  15. `stencil/`: starter code for a few models, try filling them in!

 

Files

Files (44.2 MB)

Name Size Download all
md5:2f87d82ac9ad4bead9e4a51c10bc6b93
44.2 MB Download

Additional details

Funding

U.S. National Science Foundation
SHF: Small: Little Tricky Logics: Misconceptions in Understanding Logics and Formal Properties SHF 2227863
U.S. National Science Foundation
Computing Innovation Fellows 2020 Project CCF 2030859