{
  "summary": {
    "checkpoint": "R103",
    "status": "PASS",
    "cases": [
      {
        "case": "A",
        "angle_halfwidth_deg": "5",
        "status": "FAST_EXCLUDED_OVER_SET",
        "minimum_G_decimal": [
          "0.002627200127738012094961677830310870004387377572562458114",
          "0.002627200127738012094961678126379764315766429422965044361"
        ]
      },
      {
        "case": "B",
        "angle_halfwidth_deg": "10",
        "status": "NOT_EXCLUDED_BY_THIS_BOUND",
        "minimum_G_decimal": [
          "-0.1495109226211490385952784347140769495940717398948998454",
          "-0.1495109226211490385952784344372029152205487618388827699"
        ]
      }
    ],
    "critical_angle_deg_enclosure": [
      "35.08859068431775085628032684326171875",
      "35.088590684972587041556835174560546875"
    ],
    "critical_symmetric_angle_halfwidth_deg_enclosure": [
      "5.08859068431775085628032684326171875",
      "5.088590684972587041556835174560546875"
    ],
    "central_total_speed_in_saved_units": 1,
    "central_angle_deg": 30,
    "total_speed_hard_error_percent": 20,
    "compression_absolute_hard_error": "0.05",
    "Mach_relative_hard_error_percent": 10,
    "saved_slow_inside_both": true,
    "new_fast_state_constructed": false,
    "uncertainty_semantics": "hard model bounds, not sigma",
    "historical_numerical_tests_rerun": false,
    "production_API_changed": false,
    "solar_identification": false,
    "unique_slow_identification": false,
    "native_browser_tested": false
  },
  "protocol_sha256": "55ae54690b502c8dd21fe81011dbb0271b09cf2eba42bc16649dddaa4a3ad9d1",
  "source_R102_sha256": "0d0c3038b095faea7074f17352a68501d28c037c9e212ba020029887b5e7050b",
  "source_R99_sha256": "34aa2f1d11bf10c6a5a5d9028486cdcf64737a1bed5129069241c84ae89f30c4",
  "B": {
    "r0_enclosure": [
      "71341630932043758904042097882781131012672981763894774086362255349593/32910091146424120843099383651147010099654717312671597266972180480000",
      "285366523728175035616168391531124524050691927055579096345449021398373/131640364585696483372397534604588040398618869250686389067888721920000"
    ],
    "r_min_enclosure": [
      "69696126374722552861887128700223780507690245898261194223013646325593/32910091146424120843099383651147010099654717312671597266972180480000",
      "278784505498890211447548514800895122030760983593044776892054585302373/131640364585696483372397534604588040398618869250686389067888721920000"
    ],
    "r_max_enclosure": [
      "72987135489364964946197067065338481517655717629528353949710864373593/32910091146424120843099383651147010099654717312671597266972180480000",
      "291948541957459859784788268261353926070622870518113415798843457494373/131640364585696483372397534604588040398618869250686389067888721920000"
    ],
    "x_bounds": [
      "9/10",
      "11/10"
    ]
  },
  "definitions": {
    "a": "total cA1/cA0",
    "cA0": 1,
    "cA0_cos_theta0": "w0",
    "theta0_deg": 30,
    "cos_theta0_squared": "3/4",
    "normal_projection": "cAn1/w0=a*abs(cos(theta))/cos(theta0)",
    "G": "r*a^2*cos^2(theta)/cos^2(theta0)-x^2"
  },
  "cases": [
    {
      "case": "A",
      "total_speed_ratio_bounds": [
        "4/5",
        "6/5"
      ],
      "total_speed_error_percent": 20,
      "central_angle_deg": 30,
      "angle_halfwidth_deg": "5",
      "directed_angle_bounds_deg": [
        "25",
        "35"
      ],
      "minimum_G_enclosure": [
        "3377398268115432468250245269002581686683709937607796418984162885938113321245533881973305369175351850639351388437611776811/1285550435407192220433569673872930082017762395026234268241100800000000000000000000000000000000000000000000000000000000000000",
        "33773982681154324682502456496140776792030259697426974288792921321397828770434084161410072025522420992284046279676907959/12855504354071922204335696738729300820177623950262342682411008000000000000000000000000000000000000000000000000000000000000"
      ],
      "minimum_G_decimal": [
        "0.002627200127738012094961677830310870004387377572562458114",
        "0.002627200127738012094961678126379764315766429422965044361"
      ],
      "status": "FAST_EXCLUDED_OVER_SET",
      "direct_downstream_difference_enclosure": [
        "-2348545191162475386610304059232547052400644553811017667488894323025562103084213022967390972112118067517302580260482132539919732969720176513865032345102761363807221833627092256513790651667325344511470763642496433905050895156695326552752128/4009266055466882828541447244280713949318789967012727867095469971507106354881904774864165405442273794057163540964335094419738158101748235627217708441538811161274488123448305727654634649712288287957302171935491941212603705935180187225341796875",
        "-44035222334296413498943196148118268281529485847330896967713435630328188090464296187078109379110736997431093892382449131735386491979292547290532034852666979740962641205618070330827676706121968582699432207905770714565117629631462675048300544/75173738540004053035152135830263386549727311881488647508040061965757974505841294687441462410318475179436399368619850709356124729993474441346476294363920556402157539772354485199175469640841036185029411968827606216336789657361805438995361328125"
      ],
      "direct_downstream_sign_agrees": true,
      "projected_normal_speed_over_w0_enclosure": [
        "7567002452439706498570607/10000000000000000000000000",
        "12558169075542333027224339/10000000000000000000000000"
      ],
      "max_total_speed_fractional_halfwidth_enclosure": [
        "2008670841794550031439083/10000000000000000000000000",
        "502167710448637507859771/2500000000000000000000000"
      ],
      "max_total_speed_percent_halfwidth_decimal": [
        "20.08670841794550031439083",
        "20.08670841794550031439084"
      ],
      "saved_slow_retained": true,
      "fast_existence_if_not_excluded": "not established"
    },
    {
      "case": "B",
      "total_speed_ratio_bounds": [
        "4/5",
        "6/5"
      ],
      "total_speed_error_percent": 20,
      "central_angle_deg": 30,
      "angle_halfwidth_deg": "10",
      "directed_angle_bounds_deg": [
        "20",
        "40"
      ],
      "minimum_G_enclosure": [
        "-7688153266949966853086771145222812160709290581823955030124322289620161416842011915052964991675414932357107777371667312869/51422017416287688817342786954917203280710495801049370729644032000000000000000000000000000000000000000000000000000000000000",
        "-576611495021247513981507834823904305727711684358706063383903034251649732594728329843249991677304786197231616986458914712643/3856651306221576661300709021618790246053287185078702804723302400000000000000000000000000000000000000000000000000000000000000"
      ],
      "minimum_G_decimal": [
        "-0.1495109226211490385952784347140769495940717398948998454",
        "-0.1495109226211490385952784344372029152205487618388827699"
      ],
      "status": "NOT_EXCLUDED_BY_THIS_BOUND",
      "direct_downstream_difference_enclosure": [
        "30071923259367129729664928299752671264642321473858648119931776991030604670411385128904774935775475646179951979076034647805073679934617555666372549762651710452099436722134425155935390454031014269807287899262797693921086887145390464701764206592/902084862480048636421825629963160638596727742577863770096480743589098929848428574344437216224511603662861796716975396244441085572893353016123984399346232511286759827775868788722292796185264864790392988685485686772835833835415542125701904296875",
        "7710749553683879417862802142420977269319466612079572668198123629943168600185493698258468337696168052002761191096604392054628653289804095337924457616122338924695178151096808696820418161644944228065404987066161906404038550607755610320535552/231303810892320163185083494862348881691468651943041992332430959894639921556434752884435268954826077475188921134214925259557306861518382896450696290350524788929715506991859954459001445048741649800090498365623403742574737407267093658447265625"
      ],
      "direct_downstream_sign_agrees": true,
      "projected_normal_speed_over_w0_enclosure": [
        "7076415447135342892857827/10000000000000000000000000",
        "3255190725397494771378773/2500000000000000000000000"
      ],
      "max_total_speed_fractional_halfwidth_enclosure": [
        "363663892046040878842037/2500000000000000000000000",
        "1454655568184163515368149/10000000000000000000000000"
      ],
      "max_total_speed_percent_halfwidth_decimal": [
        "14.54655568184163515368148",
        "14.54655568184163515368149"
      ],
      "saved_slow_retained": true,
      "fast_existence_if_not_excluded": "not established"
    }
  ],
  "critical_angle_rational_bracket_deg": [
    "1205634795615/34359738368",
    "2411269591275/68719476736"
  ],
  "critical_angle_bracket_margin_enclosures": [
    [
      "15946767898190557560151124483180313893436254988089056943972156450341029422325719229581897556984939916371229853339/1285550435407192220433569673872930082017762395026234268241100800000000000000000000000000000000000000000000000000000000000000",
      "15946767898190557940350092719281214566852748313760747360707808719519952135569976905895639575922873707760721725951/1285550435407192220433569673872930082017762395026234268241100800000000000000000000000000000000000000000000000000000000000000"
    ],
    [
      "-2257981223207228099254125569322706353408316577392497040516721129966143551760418326624323144338864410752322975349/321387608851798055108392418468232520504440598756558567060275200000000000000000000000000000000000000000000000000000000000000",
      "-108383098713946944201810408530910824475594745858244264910939625145888521261284499418887479795628472964464465091107/15426605224886306645202836086475160984213148740314811218893209600000000000000000000000000000000000000000000000000000000000000"
    ]
  ],
  "critical_angle_bisection_iterations": 37,
  "pi_enclosure": [
    "19634954084936207740391521145496893/6250000000000000000000000000000000",
    "314159265358979323846264338327950289/100000000000000000000000000000000000"
  ],
  "trig_certificate": "Machin alternating arctan bounds; alternating cosine series 18 terms with next-term remainder; outward rational rounding",
  "controls": [
    {
      "case": "zero_angular_width_at_30",
      "status": "MATCHES_SAVED_R102_EXACTLY"
    },
    {
      "case": "field_reversal_145_to_155",
      "status": "SAME_ABSOLUTE_PROJECTION_AS_25_TO_35"
    },
    {
      "case": "crosses_perpendicular",
      "angle_bounds_deg": [
        "85",
        "95"
      ],
      "minimum_normal_component": 0,
      "status": "NOT_EXCLUDED_BY_THIS_BOUND"
    },
    {
      "case": "unknown_direction",
      "angle_bounds_deg": [
        "0",
        "180"
      ],
      "minimum_normal_component": 0,
      "status": "NOT_EXCLUDED_BY_THIS_BOUND"
    },
    {
      "case": "exact_equality",
      "r": 2,
      "x": 1,
      "a_squared": "3/2",
      "angle_deg": 60,
      "G": "0",
      "status": "NOT_EXCLUDED_BY_THIS_BOUND",
      "endpoint_state_constructed": false
    },
    {
      "case": "invalid_input",
      "speed": [
        -1,
        1
      ],
      "angle": [
        25,
        35
      ],
      "units": "degrees",
      "status": "REJECTED",
      "reason": "INVALID_TOTAL_SPEED_BOUNDS"
    },
    {
      "case": "invalid_input",
      "speed": [
        1,
        "1/2"
      ],
      "angle": [
        25,
        35
      ],
      "units": "degrees",
      "status": "REJECTED",
      "reason": "INVALID_TOTAL_SPEED_BOUNDS"
    },
    {
      "case": "invalid_input",
      "speed": [
        0,
        1
      ],
      "angle": [
        -1,
        30
      ],
      "units": "degrees",
      "status": "REJECTED",
      "reason": "INVALID_DIRECTED_ANGLE_BOUNDS"
    },
    {
      "case": "invalid_input",
      "speed": [
        0,
        1
      ],
      "angle": [
        40,
        20
      ],
      "units": "degrees",
      "status": "REJECTED",
      "reason": "INVALID_DIRECTED_ANGLE_BOUNDS"
    },
    {
      "case": "invalid_input",
      "speed": [
        0,
        1
      ],
      "angle": [
        0,
        181
      ],
      "units": "degrees",
      "status": "REJECTED",
      "reason": "INVALID_DIRECTED_ANGLE_BOUNDS"
    },
    {
      "case": "invalid_input",
      "speed": [
        "nan",
        1
      ],
      "angle": [
        25,
        35
      ],
      "units": "degrees",
      "status": "REJECTED",
      "reason": "FINITE_NUMERIC_BOUNDS_REQUIRED"
    },
    {
      "case": "invalid_input",
      "speed": [
        0,
        1
      ],
      "angle": [
        25,
        35
      ],
      "units": "radians",
      "status": "REJECTED",
      "reason": "EXPLICIT_DEGREES_REQUIRED"
    },
    {
      "case": "invalid_input",
      "speed": [
        0,
        1
      ],
      "angle": [
        25,
        35
      ],
      "units": null,
      "status": "REJECTED",
      "reason": "EXPLICIT_DEGREES_REQUIRED"
    }
  ],
  "witness_membership": {
    "source": "saved R98 via R99, not re-solved",
    "total_cA_squared": "10/9",
    "angle_deg": 30,
    "both_sets": true
  }
}
