Skip to content
SPECIFICTION
Get listed

Viper

pm.inf.ethz.ch

WebWindowsmacOSLinuxBrowser extension
Visit pm.inf.ethz.ch
Spec score 6.9 #30 of 35 in Formal Verification Tools

Spec sheet

Purpose
Viper is a language and suite of tools for building program verifiers and prototyping verification techniques.Read 8 Oct 2026 · pm.inf.ethz.ch
Intended users
Viper is used to develop verification tools and prototypes, and the maker also describes manual encoding of verification problems as a use case.Read 8 Oct 2026 · pm.inf.ethz.ch
Support
The maker directs users to the Viper Zulip channel and Stack Overflow for support.Read 8 Oct 2026 · pm.inf.ethz.ch
Headquarters
Zürich, SwitzerlandRead 28 Sep 2026 · pm.inf.ethz.ch
Browser learning
The Viper tutorial provides runnable examples that readers can edit and try in the browser.Read 8 Oct 2026 · viper.ethz.ch
Browser tutorial
The interactive tutorial includes runnable examples that users can edit and verify in the browser.Read 8 Oct 2026 · viper.ethz.ch
Command line platforms
The maker offers command-line tool downloads for 64-bit Windows, Linux, macOS, and ARM macOS.Read 8 Oct 2026 · pm.inf.ethz.ch
Front ends
The project lists Gobra for Go, Nagini for Python, and Prusti for Rust as verifiers built on Viper.Read 8 Oct 2026 · pm.inf.ethz.ch
IDE
Viper IDE is a Visual Studio Code extension, and the maker recommends using it with the latest VS Code version.Read 8 Oct 2026 · pm.inf.ethz.ch
IDE requirement
Viper IDE requires 64-bit Java 11 or newer and downloads approximately 100 MB of dependencies.Read 8 Oct 2026 · pm.inf.ethz.ch
Language features
The Viper language includes imperative constructs, specifications, permission reasoning, mathematical types, user-defined predicates, and pure functions.Read 8 Oct 2026 · pm.inf.ethz.ch
Permission reasoning
Viper natively supports permission or ownership reasoning, including approaches such as separation logic.Read 8 Oct 2026 · pm.inf.ethz.ch
Program reasoning
Viper is designed to verify sequential and concurrent programs with mutable state using permissions or ownership.Read 8 Oct 2026 · pm.inf.ethz.ch
Security and compliance
The opened project and download pages do not state a security certification or compliance standard.Read 8 Oct 2026 · pm.inf.ethz.ch
SMT solver
Both backends use the Z3 SMT solver to discharge proof obligations.Read 8 Oct 2026 · viper.ethz.ch
Source code
The maker says the source code for Viper's core projects is open source and available on GitHub.Read 8 Oct 2026 · pm.inf.ethz.ch
System requirement
Viper IDE requires 64-bit Java 11 or newer and recommends the latest available VS Code version.Read 8 Oct 2026 · pm.inf.ethz.ch
Verification backends
Viper provides a verification-condition-generation backend and a symbolic-execution backend, both of which use the Z3 SMT solver.Read 8 Oct 2026 · viper.ethz.ch

Where Specifiction places it

Alternatives to ViperAll alternatives →