Keyboard shortcuts

Press ← or → to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

value_of_information

Measure net expected decision value of observing an indicator before acting.

Contract

The indicator’s implied prior defines the baseline. Cost is nonnegative in the same utility units as actions. Negative net value is legitimate; information gain alone need not change an action.

Fields

FieldTypeRequired
actionsarray of ActionYes
costnumberYes
indicatorIndicatorYes
op"value_of_information"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": "value_of_information",
    "actions": [
      {
        "if_yes": 10.0,
        "if_no": -10.0
      },
      {
        "if_yes": 0.0,
        "if_no": 0.0
      }
    ],
    "indicator": {
      "chance": 0.5,
      "if_yes": 1.0,
      "if_no": 0.0
    },
    "cost": 1.0
  }
}

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": {
    "net_value": 4.0
  }
}

Verification

The documentation gate executes the setup and request, then checks the following result fields against independently specified expectations:

JSON pointer within resultExpected
/net_value4.0

Float comparisons use a 1e-12 tolerance. Request schema validation and cross-record validation still apply. See errors and recovery for failure handling.