Published September 17, 2024
| Version 1.0.0
Software
Restricted
Split Decisions: Explicit Contexts for Substructural Languages (artifact)
Creators
Description
This artifact contains the Beluga mechanization accompanying the paper “Split Decisions: Explicit Contexts for Substructural Languages”, submitted to CPP 2025 (under review). The artifact contains the following files:
carve.tar
: An archive of all source files related to mechanization, along with documentationcpp-carve.ova
: A Virtual Machine image with all dependencies required to run the mechanization, including the code itself
carve.tar
. This will create a folder named carve
; from there, the file carve/README.md
contains detailed instructions for installing the proof assistant Beluga and running the mechanization.To run the Virtual Machine set-up, download the
.ova
file and import as necessary. We recommend using VirtualBox; one can import the Virtual Machine directly from the cpp-carve.ova
file by following instructions at this link. Adjust the CPU/RAM allocation as needed; a configuration of 4 cores with 4 GB of RAM should suffice. If using other Virtual Machine software, you may need to extract the .ova
file to obtain an .ovf
file and follow the appropriate instructions.The Virtual Machine instance is a Ubuntu Server with an SSH server, containing all relevant dependencies and
carve
pre-installed. The username and password are both cpp25
. After successfully launching and logging in (via terminal or SSH), run the following:cd carve
beluga run_all.cfg