WRITE · COMPARE · REFINE

Your next idea starts here.

Choose a predicate, write your answer, and use the feedback to improve it.

Code saves automatically in this browser. Export a backup to keep or move it.

Predicate editor

Ready when you are
predicate.alsALLOY
pred … {
Enter indents automatically. Tab inserts two spaces. Press Escape then Tab, or Shift+Tab, to move focus out of the editor. Control+Enter or Command+Enter checks the predicate.
Ln 1, Col 1UTF-8·Predicate body only
Your canonical form

The checker rewrites your predicate into this form for comparison. It also tracks which declaration each variable belongs to, which this text does not fully show. Identical-looking forms can therefore have a nonzero distance. Select an edit to highlight the related parts. A positive distance alone does not mean your predicate behaves incorrectly.

Check your predicate to see its canonical form.

Model environmentREAD ONLY
The model's declarations and commands appear together below. The TODO marks the predicate body you write in the editor above.
Select an exercise to inspect its model.
Original model · preserved as supplied

Behavioral similarity score

Check your predicate to compare its behavior with the oracle.

Drafts that pass the bounded behavioral checks may be retained privately for administrator review.