A physics engine, and a verification tool enforced on top of it. PhysWall inverts a closed, published, non-linear physical law at a single measurement point — and refuses when the inverse is not unique. Seven laws, one engine, and the same refusal in all of them.
Hand it a law from a field it has never seen, and it runs that one too.
This is an inverse problem, and the field has a test for them. Hadamard 1902: a problem is well-posed if a solution exists, is unique, and depends continuously on the data (stability). Fail any one and it is ill-posed. The refusals here are those three criteria, one to one.
Every tool on this site is the same engine handed a different law. That is a claim, and there is only one way to test it: hand it a law from a field it has never seen and watch what happens.
A separate conversation — no access to this project, no idea what it was for — was handed a stated law and a measurement, in a fixed format, and nothing else. No code, no explanation of what any of it was for.
It returned Q = 44.57.
Which is the same number the RF tool on this site computes, from code written separately, by someone who did know what RF is.
The same conversation wrote a declaration for Manning's equation — open-channel hydraulics, water in a ditch, nothing to do with electronics or photonics or anything else here.
It ran. And it refused correctly: fed a roughness value that no concrete channel could have, it said so instead of returning it.
The built-in Bode-Fano declaration shipped with its unit written as an empty string, because Q is genuinely dimensionless. The engine refused it — an undeclared unit and a deliberately dimensionless one look identical, and a formula off by a factor of a thousand looks like a correct one.
So the first law anyone clicked returned no verdict. The refusal was right and the declaration was wrong; "dimensionless" is a declaration, and an empty string is an omission.
We found that while writing this page.
Everything else here is a single HTML file, and that is deliberate — your measurements never leave your machine.
This one is a form. Your declaration goes to the server, the engine runs there, and a verdict comes back. Nothing about the engine travels with it.
Not mainly to hide it. The version that ran the engine in your browser was a second implementation of the whole thing, and the two had already drifted: a refusal added to one was missing from the other. One engine cannot drift from itself, and that is worth more than the secrecy.
A formula from a stranger, evaluated on our machine, is somebody else's
code on our machine. The parser has no eval and no
compile in it, and every operation it can perform is on a fixed
list. Its limits are counted rather than timed — depth, node count,
evaluations — so the same request always gives the same answer.
And "we wrote it and it looks fine to us" is not a security review. An engineer has to read it before this runs anywhere a stranger can reach. That check is named and open, and it is the only thing between here and finished.
you type a law -> sent to the server the engine runs there -> in Python, one implementation a verdict comes back -> and nothing else does
Which solves a second problem we have, and it is not secrecy. There are currently two implementations of this engine, one in Python and one in JavaScript, and they have already drifted — a refusal added to one is missing from the other. One engine cannot drift from itself.
Four fields to start. The engine runs on our side and sends back a verdict, not itself.
PhysWall was developed and architected by Gadi Zion.
Built on PhysWall — the same engine reads antenna bandwidth, conductor loss, bit erasure and heat limits. It answers what the measurement implies, and refuses when the measurement cannot say.⚠ Check this instead of believing it. Every number here reproduces from a source that is named, and the claims that turned out wrong are still printed next to what replaced them. The same engine runs all of these — it asks how much a measurement allows you to conclude, and refuses the same way in every field. The same engine runs all of these — it asks how much a measurement allows you to conclude, and refuses the same way in every field. How to check each one →