docs← Back to article

Markdown for LLMs

Blawx

The source Markdown for this article. Copy it into your assistant or download it as a text file.

Download this articlePlain text ↗
# Blawx

**In short:** Blawx is a visual front end; the reasoning underneath comes
from an answer-set engine with constructive negation and abduction. This
page — one of three separate Prolog-family studies alongside Logical
English and PROLEG — keeps three attributions apart: justifications belong
to the engine, defeat discipline to the code generator, visual entry to the
editor. It is for readers who explain negative answers and hypotheticals.

## What Blawx is for

Blawx lets a non-programmer assemble executable norms from blocks, with
section-defeats-section as the exception discipline close to statutory
text. Its strengths are justifications readable in the act's words,
hypothetical questions as a first-class engine feature (including
constraint answers like "any amount above this"), per-section provenance
citations, and a scenario explorer for what-if walks. Execution underneath
is goal-directed answer-set programming: constructive negation, abduction,
multiple and symbolic answers, justification trees.

## Where it meets Arxo

Explaining positive and negative answers, two kinds of negation, and
"what would have to hold" questions on one published toy model is the
shared ground with Arxo's proof and missing-premise analysis. The studied
toy act is a five-section bird-flight chain with chained defeats and a
jetpack exception; a confirmed text-versus-recorded trap in one case is
kept as a trap with its cause, not scored as a defect.

## Key differences

- **Defeat compiles to guards.** The editor translates priority claims
  into defeat facts plus a holds-only-if-undefeated guard — classical
  conjunction with negation, not engine-level defeasible logic. Arxo's
  priority construct is the stronger claim; the pair compares, never
  parities.
- **Two negations, honestly separated.** Default negation with
  constructive proof of the negative plus classical strong negation in the
  output. Arxo pairs missing-premise analysis and unknown status against
  proven negation — a genuine parallel, not an identity.
- **Hypotheticals are engine properties.** Abduction and symbolic answers
  are available to any author of engine programs; the editor's merit is
  exposing them block-wise. The studied model is stratified, so multiple
  worlds do not manifest there — Arxo gives one deterministic grounded
  answer everywhere.
- **Pin the engine at run time.** The studied editor is pinned; the engine
  inside it floats with the container image and must be pinned when the
  run happens. A comparison that omits the engine version compares
  unknowns.

## A concrete scenario

Twelve cases on the bird-flight twin — positive and negative answers,
defeat chains, classical negation, hypotheticals, boundaries — plus three
edits: a code-generator refactor, a changed encoding default, and an
old-versus-new act comparison. Fixture queries without recorded
expectations stay labeled open; published passing figures from a sibling
project are its answers, not runs of this pin.

## Choosing and combining

Choose Blawx when the authors are lawyers who think in blocks, when
negative answers and hypotheticals need readable justifications, and when
visual scenario walks carry the review. Look to Arxo when derivations need
replayable hashes, editions need dating, and conflicts need declared
priorities across sources. Combined, blocks can front the authoring while
Arxo executes the pinned meaning — with the generator mapping, not the
screenshot, as the binding.

## Evidence and open questions

- Sources checked: September 2026 (full-file reads including the code
  generator, the reasoner, the frozen model revisions with hashes; the
  hosted demo was unreachable and only the local pin counts).
- Studied profile: the editor at its pin and release; the engine floats
  and is pinned only at run time.
- Basis: confirmed by documentation and code reading plus a prepared
  protocol; comparative run not performed.
- Open: hypothetical-question execution on new tasks, the visual explorer
  (deferred: no visual entry on the Arxo side by decision), and the run
  itself.

## Sources and reproducible materials

- Shared scenarios: [One charities text, five systems](/comparisons/jersey-charities/) and [Explaining yes, no, and unknown](/comparisons/explanations/).
- Editor and engine:
  [github.com/Lexpedite/blawx](https://github.com/Lexpedite/blawx),
  [github.com/SWI-Prolog/sCASP](https://github.com/SWI-Prolog/sCASP)
- Justifications paper: [arxiv.org/html/2009.10238](https://arxiv.org/html/2009.10238)
- Building Blawx (CEUR-3437):
  [ceur-ws.org/Vol-3437/paper5GDE.pdf](https://ceur-ws.org/Vol-3437/paper5GDE.pdf)