/Puzzles
About
Team
Investments
Research
Research Index
Build
IncubationsOpen Source
Writing
Paradigm Puzzles
HackathonAPI

Terms, Disclosures, Privacy

LinkedIn, Twitter, Contact

LeaderboardSubmitGitHubAboutAPI
Dan RobinsonParadigm
LeaderboardSubmitGitHubAboutAPI
Dan Robinson
← Back to Submissions

a && (b || c) evaluates to false when it is true

Duplicate

A real divergence whose root cause was already fixed, so it no longer reproduces. No point.

Details

Duplicate of earlier submission 35fbea26-1498-48df-9f78-3be8d990df32 (@TheBenMeadows, 2026-09-18T23:32:33.537Z). Manual comparison confirms identical Solidity tokens and identical execution/claim manifest after removing only comments, whitespace, feature, and note. Both pass the static gate. Consequently any semantics fix that eliminates the earlier divergence also eliminates this one; no independent point is due. The earlier submission retains its own validity review and first-file priority.

manual-static-and-source-review

Author
@TheBenMeadows
Points
0
Verdict
—
Resolution
Duplicate of an already-fixed root cause
Submitted
Sep 19, 2026, 12:18 AM
Reviewed
Sep 28, 2026, 09:41 PM

Root cause

Duplicate of earlier submission 35fbea26-1498-48df-9f78-3be8d990df32 (@TheBenMeadows, 2026-09-18T23:32:33.537Z). Manual comparison confirms identical Solidity tokens and identical execution/claim manifest after removing only comments, whitespace, feature, and note. Both pass the static gate. Consequently any semantics fix that eliminates the earlier divergence also eliminates this one; no independent point is due. The earlier submission retains its own validity review and first-file priority.

Source

// SPDX-License-Identifier: MIT
pragma solidity 0.8.35;
/* ===ARENA-MANIFEST===
{
 "deploy": {
  "contract": "C",
  "args": []
 },
 "entry": {
  "function": "run",
  "args": [
   0
  ]
 },
 "feature": "nested-and-or-evaluation",
 "note": "g(3) && (g(4) || g(5)) with a pure parity predicate: true && (false || true) is true. solc+EVM returns true; solidity-lean returns false. The disjunction alone (g(4) || g(5)) agrees, so the fault is in a parenthesised || appearing as the right operand of &&."
}
===END-ARENA-MANIFEST=== */
contract C {
    function g(uint256 v) internal pure returns (bool) { return v % 2 == 1; }
    function run(uint256) external pure returns (bool) {
        return g(3) && (g(4) || g(5));
    }
}