FREEDOM251

Freedom251 › Property-Based Testing Tools

Plausible

Free plan

Visit Plausible Alternatives

Plausible's own site

What Plausible is

Plausible is a free property-testing framework for Lean 4 that integrates with Lean’s tactic framework. Its plausible tactic searches for counterexamples and can display a failing case for a false proposition, including an array example. Plausible.Testable.check provides a programmatic way to check properties, and failing cases can be shrunk. Built-in Lean types are usually handled without additional setup. Custom types require Repr, Plausible.Shrinkable, and Plausible.SampleableExt instances, or Plausible.Arbitrary. Users can derive Arbitrary for algebraic data types, including with a top-level deriving command for multiple types. The project directs users to its module documentation for more information. Plausible supports Lean 4 and the Lean 4 tactic framework, and its repository identifies the Apache-2.0 license. Its purpose is property checking and counterexample discovery rather than general testing across programming languages.

Who it suits

Plausible suits Lean 4 developers checking propositions and shrinking failing examples. It is useful when properties involve built-in or suitably configured custom types.

What it does well

  • Free Apache-2.0 project
  • Finds counterexamples
  • Shrinks failing cases
  • Programmatic property checking
  • Supports derived Arbitrary instances

What to know first

  • Limited to Lean 4
  • Custom types require support instances
  • Not a general multi-language test framework

Verdict

Plausible adds property checking and counterexample search directly to Lean’s tactic workflow. Users working with custom types need to provide the documented instances or Arbitrary support.

Facts from Plausible's own pages

Arbitrary instances
The README says users can derive `Arbitrary` for algebraic data types or use a top-level deriving command for multiple types. · github.com, 8 Oct 2026
Built-in types
The README says Plausible usually handles built-in types without additional setup. · github.com, 8 Oct 2026
Counterexamples
The README shows the `plausible` tactic finding and displaying a counterexample to a proposition. · github.com, 8 Oct 2026
Counterexample search
The README shows the `plausible` tactic finding a counterexample for a false property involving arrays. · github.com, 9 Oct 2026
Custom types
The README says custom types need `Repr`, `Plausible.Shrinkable`, and `Plausible.SampleableExt` instances, or `Plausible.Arbitrary`. · github.com, 9 Oct 2026
Deriving Arbitrary
The README documents deriving `Arbitrary` for algebraic data types, including with a top-level `deriving instance` command. · github.com, 9 Oct 2026
Documentation
The README directs users to the module documentation for more information. · github.com, 8 Oct 2026
License
The repository identifies its license as Apache-2.0. · github.com, 9 Oct 2026
Product
Plausible is a property testing framework for Lean 4 that integrates into the tactic framework. · github.com, 8 Oct 2026
Programmatic checking
The README shows properties being checked with `Plausible.Testable.check`. · github.com, 9 Oct 2026
Property checking
The README demonstrates checking a property with `Plausible.Testable.check`. · github.com, 8 Oct 2026
Purpose
Plausible is a property testing framework for Lean 4 that integrates into the tactic framework. · github.com, 9 Oct 2026

Where Plausible stands on Freedom251

Look at these too