1. 1. Introduction
  2. 2. Configuration
    1. 2.1. Providing Flags
    2. 2.2. List of Configuration Flags
  3. 3. Verification Pipeline
    1. 3.1. Binary stage
    2. 3.2. Rust compilation stage
    3. 3.3. Prusti processing stage
    4. 3.4. Viper verification stage
    5. 3.5. Reporting stage
  4. 4. Macros
  5. 5. Viper Encoding
    1. 5.1. Types
      1. 5.1.1. Heap-based type encoding
      2. 5.1.2. Snapshot-based type encoding
    2. 5.2. Pure function encoding
    3. 5.3. Name mangling
  6. 6. Repository Layout
  7. 7. Development
    1. 7.1. Setup
    2. 7.2. Building
    3. 7.3. Tests
    4. 7.4. IDE integration
    5. 7.5. Debugging

Prusti dev guide

Development

  • Setup
  • Building
  • Tests
  • IDE integration
  • Debugging