union
Return coherent union/intersection bounds and an exact union when overlap is known.
Contract
Unknown intersection leaves union null; bounds are still available. A supplied intersection outside Frechet bounds is rejected rather than silently corrected.
Fields
| Field | Type | Required |
|---|---|---|
a | Probability | Yes |
b | Probability | Yes |
intersection | Probability or null | No |
op | "union" | Yes |
This operation needs no existing question or forecast. Use --memory for a calculation-only session.
Request
Send this object on one line. It is expanded below for readability.
{
"version": 1,
"id": "example",
"command": {
"op": "union",
"a": 0.4,
"b": 0.5,
"intersection": null
}
}
Response
This response is generated by executing the example against the current binary. Commit timestamps, when present, are shown as <runtime UTC seconds>; the actual protocol returns integer UTC seconds.
{
"version": 1,
"id": "example",
"result": {
"intersection_bounds": [
0.0,
0.4
],
"union": null,
"union_bounds": [
0.5,
0.9
]
}
}
Verification
The documentation gate executes the setup and request, then checks the following result fields against independently specified expectations:
JSON pointer within result | Expected |
|---|---|
/union | null |
/union_bounds/0 | 0.5 |
/union_bounds/1 | 0.9 |
Float comparisons use a 1e-12 tolerance. Request schema validation and cross-record validation still apply. See errors and recovery for failure handling.