{
 "release": "0.4.0",
 "generated": "2026-10-13",
 "theme": "cause-effect pairs",
 "build": "pre-release Andrey 0.4.0 build, 12 October 2026",
 "regime": {
  "ANM": {
   "name": "anm_pair",
   "description": "cause-effect pairs: two variables, one edge in a seed-drawn direction, effect = w * (x + sin x) + noise, |w| in (0.5, 2), Gaussian noise, standardized"
  },
  "PNL": {
   "name": "pnl_pair",
   "description": "cause-effect pairs: two variables, one edge in a seed-drawn direction, effect = g2(w * x + noise), g2(z) = z + 0.5 tanh(z), |w| in (0.5, 2), Laplace noise, standardized"
  }
 },
 "packages": {
  "causal-learn": "0.1.4.8",
  "torch": "2.14.1+cpu"
 },
 "hardware": {
  "ANM": {
   "cpu": "Intel Core i7-7820X",
   "cores_per_fit": 4
  },
  "PNL": {
   "cpu": "Intel Core i7-7820X",
   "cores_per_fit": 4
  }
 },
 "complete": true,
 "pending_fits": 0,
 "incomplete": [],
 "methods": [
  {
   "method": "ANM",
   "family": "pairwise",
   "solution": "andrey.anm.numpy",
   "comparator": "causal-learn",
   "comparator_solution": "causal-learn.anm",
   "regime": "anm_pair",
   "hardware": "Intel Core i7-7820X, 4 cores",
   "cores": 4,
   "build": "pre-release Andrey 0.4.0 build, 12 October 2026",
   "decision_rule": "both packages name the direction with the larger p-value; on equal p-values Andrey takes the direction with the smaller HSIC statistic relative to its mean under independence, and causal-learn draws no edge",
   "same_graph_test": "equal structure_hash (both return a two-node DAG with at most one edge)",
   "complete": true,
   "rows": [
    {
     "n": 200,
     "d": 2,
     "seeds": 20,
     "repeats": 1,
     "cap_wall_s": 1800,
     "fits": 20,
     "andrey_ok": 20,
     "comparator_ok": 20,
     "paired": 20,
     "andrey_s": 0.0907,
     "comparator_s": 0.178,
     "ratio": 2.08,
     "andrey_direction_correct": 0.75,
     "andrey_correct": 15,
     "andrey_reversed": 5,
     "andrey_no_edge": 0,
     "comparator_direction_correct": 0.75,
     "comparator_correct": 15,
     "comparator_reversed": 5,
     "comparator_no_edge": 0,
     "same_graph": 20,
     "andrey_right_comparator_wrong": 0,
     "comparator_right_andrey_wrong": 0,
     "complete": true
    },
    {
     "n": 500,
     "d": 2,
     "seeds": 20,
     "repeats": 1,
     "cap_wall_s": 1800,
     "fits": 20,
     "andrey_ok": 20,
     "comparator_ok": 20,
     "paired": 20,
     "andrey_s": 0.624,
     "comparator_s": 1.11,
     "ratio": 1.88,
     "andrey_direction_correct": 0.8,
     "andrey_correct": 16,
     "andrey_reversed": 4,
     "andrey_no_edge": 0,
     "comparator_direction_correct": 0.8,
     "comparator_correct": 16,
     "comparator_reversed": 4,
     "comparator_no_edge": 0,
     "same_graph": 20,
     "andrey_right_comparator_wrong": 0,
     "comparator_right_andrey_wrong": 0,
     "complete": true
    },
    {
     "n": 1000,
     "d": 2,
     "seeds": 20,
     "repeats": 1,
     "cap_wall_s": 1800,
     "fits": 20,
     "andrey_ok": 20,
     "comparator_ok": 20,
     "paired": 20,
     "andrey_s": 2.0,
     "comparator_s": 3.94,
     "ratio": 2.05,
     "andrey_direction_correct": 0.95,
     "andrey_correct": 19,
     "andrey_reversed": 1,
     "andrey_no_edge": 0,
     "comparator_direction_correct": 0.95,
     "comparator_correct": 19,
     "comparator_reversed": 1,
     "comparator_no_edge": 0,
     "same_graph": 20,
     "andrey_right_comparator_wrong": 0,
     "comparator_right_andrey_wrong": 0,
     "complete": true
    },
    {
     "n": 2000,
     "d": 2,
     "seeds": 20,
     "repeats": 1,
     "cap_wall_s": 1800,
     "fits": 20,
     "andrey_ok": 20,
     "comparator_ok": 20,
     "paired": 20,
     "andrey_s": 7.65,
     "comparator_s": 18.0,
     "ratio": 2.38,
     "andrey_direction_correct": 0.95,
     "andrey_correct": 19,
     "andrey_reversed": 1,
     "andrey_no_edge": 0,
     "comparator_direction_correct": 0.95,
     "comparator_correct": 19,
     "comparator_reversed": 1,
     "comparator_no_edge": 0,
     "same_graph": 20,
     "andrey_right_comparator_wrong": 0,
     "comparator_right_andrey_wrong": 0,
     "complete": true
    },
    {
     "n": 4000,
     "d": 2,
     "seeds": 10,
     "repeats": 1,
     "cap_wall_s": 1800,
     "fits": 10,
     "andrey_ok": 10,
     "comparator_ok": 10,
     "paired": 10,
     "andrey_s": 35.9,
     "comparator_s": 87.5,
     "ratio": 2.47,
     "andrey_direction_correct": 1.0,
     "andrey_correct": 10,
     "andrey_reversed": 0,
     "andrey_no_edge": 0,
     "comparator_direction_correct": 1.0,
     "comparator_correct": 10,
     "comparator_reversed": 0,
     "comparator_no_edge": 0,
     "same_graph": 10,
     "andrey_right_comparator_wrong": 0,
     "comparator_right_andrey_wrong": 0,
     "complete": true
    },
    {
     "n": 8000,
     "d": 2,
     "seeds": 5,
     "repeats": 1,
     "cap_wall_s": 1800,
     "fits": 5,
     "andrey_ok": 5,
     "comparator_ok": 5,
     "paired": 5,
     "andrey_s": 196.0,
     "comparator_s": 472.0,
     "ratio": 2.39,
     "andrey_direction_correct": 1.0,
     "andrey_correct": 5,
     "andrey_reversed": 0,
     "andrey_no_edge": 0,
     "comparator_direction_correct": 1.0,
     "comparator_correct": 5,
     "comparator_reversed": 0,
     "comparator_no_edge": 0,
     "same_graph": 5,
     "andrey_right_comparator_wrong": 0,
     "comparator_right_andrey_wrong": 0,
     "complete": true
    }
   ]
  },
  {
   "method": "PNL",
   "family": "pairwise",
   "solution": "andrey.pnl.numpy",
   "comparator": "causal-learn",
   "comparator_solution": "causal-learn.pnl",
   "regime": "pnl_pair",
   "hardware": "Intel Core i7-7820X, 4 cores",
   "cores": 4,
   "build": "pre-release Andrey 0.4.0 build, 12 October 2026",
   "decision_rule": "both packages name the direction with the larger p-value; on equal p-values Andrey takes the direction with the smaller HSIC statistic relative to its mean under independence, and causal-learn draws no edge",
   "same_graph_test": "equal structure_hash (both return a two-node DAG with at most one edge)",
   "complete": true,
   "rows": [
    {
     "n": 200,
     "d": 2,
     "seeds": 20,
     "repeats": 1,
     "cap_wall_s": 1200,
     "fits": 20,
     "andrey_ok": 20,
     "comparator_ok": 20,
     "paired": 20,
     "andrey_s": 0.00892,
     "comparator_s": 13.2,
     "ratio": 1470.0,
     "andrey_direction_correct": 0.75,
     "andrey_correct": 15,
     "andrey_reversed": 5,
     "andrey_no_edge": 0,
     "comparator_direction_correct": 0.5,
     "comparator_correct": 10,
     "comparator_reversed": 10,
     "comparator_no_edge": 0,
     "empty_direction_correct": 0.0,
     "same_graph": 11,
     "andrey_right_comparator_wrong": 7,
     "comparator_right_andrey_wrong": 2,
     "complete": true
    },
    {
     "n": 500,
     "d": 2,
     "seeds": 20,
     "repeats": 1,
     "cap_wall_s": 1200,
     "fits": 20,
     "andrey_ok": 20,
     "comparator_ok": 20,
     "paired": 20,
     "andrey_s": 0.0283,
     "comparator_s": 37.3,
     "ratio": 1310.0,
     "andrey_direction_correct": 0.95,
     "andrey_correct": 19,
     "andrey_reversed": 1,
     "andrey_no_edge": 0,
     "comparator_direction_correct": 0.5,
     "comparator_correct": 10,
     "comparator_reversed": 10,
     "comparator_no_edge": 0,
     "empty_direction_correct": 0.0,
     "same_graph": 11,
     "andrey_right_comparator_wrong": 9,
     "comparator_right_andrey_wrong": 0,
     "complete": true
    },
    {
     "n": 1000,
     "d": 2,
     "seeds": 20,
     "repeats": 1,
     "cap_wall_s": 1200,
     "fits": 20,
     "andrey_ok": 20,
     "comparator_ok": 20,
     "paired": 20,
     "andrey_s": 0.0861,
     "comparator_s": 85.5,
     "ratio": 993.0,
     "andrey_direction_correct": 1.0,
     "andrey_correct": 20,
     "andrey_reversed": 0,
     "andrey_no_edge": 0,
     "comparator_direction_correct": 0.5,
     "comparator_correct": 10,
     "comparator_reversed": 10,
     "comparator_no_edge": 0,
     "empty_direction_correct": 0.0,
     "same_graph": 10,
     "andrey_right_comparator_wrong": 10,
     "comparator_right_andrey_wrong": 0,
     "complete": true
    },
    {
     "n": 2000,
     "d": 2,
     "seeds": 20,
     "repeats": 1,
     "cap_wall_s": 1200,
     "fits": 20,
     "andrey_ok": 20,
     "comparator_ok": 20,
     "paired": 20,
     "andrey_s": 0.27,
     "comparator_s": 187.0,
     "ratio": 696.0,
     "andrey_direction_correct": 1.0,
     "andrey_correct": 20,
     "andrey_reversed": 0,
     "andrey_no_edge": 0,
     "comparator_direction_correct": 0.5,
     "comparator_correct": 10,
     "comparator_reversed": 10,
     "comparator_no_edge": 0,
     "empty_direction_correct": 0.0,
     "same_graph": 10,
     "andrey_right_comparator_wrong": 10,
     "comparator_right_andrey_wrong": 0,
     "complete": true
    },
    {
     "n": 5000,
     "d": 2,
     "seeds": 20,
     "repeats": 1,
     "cap_wall_s": 2400,
     "fits": 20,
     "andrey_ok": 20,
     "comparator_ok": 20,
     "paired": 20,
     "andrey_s": 1.72,
     "comparator_s": 475.0,
     "ratio": 275.0,
     "andrey_direction_correct": 1.0,
     "andrey_correct": 20,
     "andrey_reversed": 0,
     "andrey_no_edge": 0,
     "comparator_direction_correct": 0.25,
     "comparator_correct": 5,
     "comparator_reversed": 15,
     "comparator_no_edge": 0,
     "empty_direction_correct": 0.0,
     "same_graph": 5,
     "andrey_right_comparator_wrong": 15,
     "comparator_right_andrey_wrong": 0,
     "complete": true
    }
   ],
   "empty_reference": "the empty graph names no direction (recorded in the lane)"
  }
 ]
}
