Skip to content

Commit f158eb1

Browse files
committed
Update README
1 parent fa71fb0 commit f158eb1

1 file changed

Lines changed: 46 additions & 46 deletions

File tree

‎README.md‎

Lines changed: 46 additions & 46 deletions
Original file line numberDiff line numberDiff line change
@@ -300,52 +300,6 @@ This includes source contracts and external refinement contracts.
300300
}
301301
```
302302

303-
### `check_validity`
304-
305-
Checks whether custom assumptions imply one conclusion using LiquidJava's solver, without verifying Java files.
306-
Does not support ghost functions, aliases, source constants, and implicit receiver/return/old-state bindings.
307-
308-
**Input:** `variables` (map of names to types), `assumptions` (array of boolean predicate strings), and `conclusion` (boolean predicate string).
309-
310-
**Output:** `status` (`valid`, `invalid`, or `unknown`). Invalid results include a `counterexample`.
311-
312-
```json
313-
{
314-
"variables": {"x": "int"},
315-
"assumptions": ["x >= 0"],
316-
"conclusion": "x > 0"
317-
}
318-
```
319-
320-
```json
321-
{
322-
"status": "invalid",
323-
"counterexample": [{"variable": "x", "value": "0"}]
324-
}
325-
```
326-
327-
### `check_satisfiability`
328-
329-
Checks whether custom constraints have a satisfying assignment using LiquidJava's solver. It returns `sat`, `unsat`, or `unknown`; `sat` results include the solver's assignment when available.
330-
331-
**Input:** `variables` (map of names to types) and `constraints` (array of boolean predicate strings).
332-
333-
**Output:** `status` (`sat`, `unsat`, or `unknown`). Satisfiable results include an `assignment`.
334-
335-
```json
336-
{
337-
"variables": {"x": "int"},
338-
"constraints": ["x > 0", "x < 2"]
339-
}
340-
```
341-
342-
```json
343-
{
344-
"status": "sat",
345-
"assignment": [{"variable": "x", "value": "1"}]
346-
}
347-
```
348-
349303
### `get_state_machine`
350304

351305
Parses a Java source file and returns the LiquidJava typestate protocol declared by its `@StateSet` and `@StateRefinement` annotations. The result describes the possible states, initial states, and method transitions. A transition's `fromCondition` and `toCondition` contain any non-state conditions such as `cond ? state1 : state2` or `cond && state1`.
@@ -393,3 +347,49 @@ Parses a Java source file and returns the LiquidJava typestate protocol declared
393347
}
394348
}
395349
```
350+
351+
### `check_validity`
352+
353+
Checks whether custom assumptions imply one conclusion using LiquidJava's solver, without verifying Java files.
354+
Does not support ghost functions, aliases, source constants, and implicit receiver/return/old-state bindings.
355+
356+
**Input:** `variables` (map of names to types), `assumptions` (array of boolean predicate strings), and `conclusion` (boolean predicate string).
357+
358+
**Output:** `status` (`valid`, `invalid`, or `unknown`). Invalid results include a `counterexample`.
359+
360+
```json
361+
{
362+
"variables": {"x": "int"},
363+
"assumptions": ["x >= 0"],
364+
"conclusion": "x > 0"
365+
}
366+
```
367+
368+
```json
369+
{
370+
"status": "invalid",
371+
"counterexample": [{"variable": "x", "value": "0"}]
372+
}
373+
```
374+
375+
### `check_satisfiability`
376+
377+
Checks whether custom constraints have a satisfying assignment using LiquidJava's solver. It returns `sat`, `unsat`, or `unknown`; `sat` results include the solver's assignment when available.
378+
379+
**Input:** `variables` (map of names to types) and `constraints` (array of boolean predicate strings).
380+
381+
**Output:** `status` (`sat`, `unsat`, or `unknown`). Satisfiable results include an `assignment`.
382+
383+
```json
384+
{
385+
"variables": {"x": "int"},
386+
"constraints": ["x > 0", "x < 2"]
387+
}
388+
```
389+
390+
```json
391+
{
392+
"status": "sat",
393+
"assignment": [{"variable": "x", "value": "1"}]
394+
}
395+
```

0 commit comments

Comments
 (0)