{
  "controller": "sine",
  "name": "Bounded sine oscillator (|output| \u2264 amplitude)",
  "kind": "controller",
  "label": "",
  "source": {
    "eml": "examples/sine_oscillator.eml",
    "sha256": "73837d61bea80a15"
  },
  "emitted": [
    {
      "target": "c",
      "category": "software",
      "file": "emit/sine_oscillator.c",
      "lines": 29,
      "ok": true,
      "tier": "LOCAL"
    },
    {
      "target": "cpp",
      "category": "software",
      "file": "emit/sine_oscillator.cpp",
      "lines": 32,
      "ok": true,
      "tier": "LOCAL"
    },
    {
      "target": "csharp",
      "category": "software",
      "file": "emit/SineOscillator.cs",
      "lines": 40,
      "ok": true,
      "tier": "LOCAL"
    },
    {
      "target": "gdscript",
      "category": "software",
      "file": "emit/sine_oscillator.gd",
      "lines": 22,
      "ok": true,
      "tier": "LOCAL"
    },
    {
      "target": "go",
      "category": "software",
      "file": "emit/sine_oscillator.go",
      "lines": 29,
      "ok": true,
      "tier": "LOCAL"
    },
    {
      "target": "java",
      "category": "software",
      "file": "emit/SineOscillator.java",
      "lines": 31,
      "ok": true,
      "tier": "LOCAL"
    },
    {
      "target": "javascript",
      "category": "software",
      "file": "emit/sine_oscillator.mjs",
      "lines": 35,
      "ok": true,
      "tier": "LOCAL"
    },
    {
      "target": "kotlin",
      "category": "software",
      "file": "emit/sine_oscillator.kt",
      "lines": 30,
      "ok": true,
      "tier": "LOCAL"
    },
    {
      "target": "luau",
      "category": "software",
      "file": "emit/sine_oscillator.luau",
      "lines": 31,
      "ok": true,
      "tier": "LOCAL"
    },
    {
      "target": "matlab",
      "category": "software",
      "file": "emit/sine_oscillator.m",
      "lines": 26,
      "ok": true,
      "tier": "LOCAL"
    },
    {
      "target": "python",
      "category": "software",
      "file": "emit/sine_oscillator.py",
      "lines": 21,
      "ok": true,
      "tier": "LOCAL"
    },
    {
      "target": "rust",
      "category": "software",
      "file": "emit/sine_oscillator.rs",
      "lines": 23,
      "ok": true,
      "tier": "LOCAL"
    },
    {
      "target": "swift",
      "category": "software",
      "file": "emit/sine_oscillator.swift",
      "lines": 29,
      "ok": true,
      "tier": "LOCAL"
    },
    {
      "target": "wasm",
      "category": "software",
      "file": "emit/sine_oscillator.wasm.ll",
      "lines": 44,
      "ok": true,
      "tier": "LOCAL"
    },
    {
      "target": "glsl",
      "category": "gpu shader",
      "file": "emit/sine_oscillator.glsl",
      "lines": 35,
      "ok": true,
      "tier": "LOCAL"
    },
    {
      "target": "glsl-es",
      "category": "gpu shader",
      "file": "emit/sine_oscillator.glsles",
      "lines": 37,
      "ok": true,
      "tier": "LOCAL"
    },
    {
      "target": "hlsl",
      "category": "gpu shader",
      "file": "emit/sine_oscillator.hlsl",
      "lines": 43,
      "ok": true,
      "tier": "LOCAL"
    },
    {
      "target": "metal",
      "category": "gpu shader",
      "file": "emit/sine_oscillator.metal",
      "lines": 43,
      "ok": true,
      "tier": "LOCAL"
    },
    {
      "target": "wgsl",
      "category": "gpu shader",
      "file": "emit/sine_oscillator.wgsl",
      "lines": 33,
      "ok": true,
      "tier": "LOCAL"
    },
    {
      "target": "llvm",
      "category": "compiler IR",
      "file": "emit/sine_oscillator.ll",
      "lines": 43,
      "ok": true,
      "tier": "LOCAL"
    },
    {
      "target": "coq",
      "category": "proof",
      "file": "emit/sine_oscillator.v",
      "lines": 24,
      "ok": true,
      "tier": "LOCAL"
    },
    {
      "target": "isabelle",
      "category": "proof",
      "file": "emit/sine_oscillator.thy",
      "lines": 25,
      "ok": true,
      "tier": "LOCAL"
    },
    {
      "target": "lean",
      "category": "proof",
      "file": "emit/sine_oscillator.lean",
      "lines": 35,
      "ok": true,
      "tier": "LOCAL"
    },
    {
      "target": "aadl",
      "category": "safety-critical",
      "file": "emit/sine_oscillator.aadl",
      "lines": 39,
      "ok": true,
      "tier": "LOCAL"
    },
    {
      "target": "ada/spark",
      "category": "safety-critical",
      "file": "emit/sine_oscillator.adb",
      "lines": 20,
      "ok": true,
      "tier": "LOCAL"
    },
    {
      "target": "autosar",
      "category": "safety-critical",
      "file": "emit/sine_oscillator.autosar.c",
      "lines": 59,
      "ok": true,
      "tier": "LOCAL"
    },
    {
      "target": "ros2",
      "category": "safety-critical",
      "file": "emit/sine_oscillator_pkg",
      "lines": 0,
      "ok": true,
      "tier": "LOCAL"
    },
    {
      "target": "solidity",
      "category": "blockchain",
      "file": "emit/sine_oscillator.sol",
      "lines": 40,
      "ok": true,
      "tier": "LOCAL"
    },
    {
      "target": "zkproof",
      "category": "blockchain",
      "file": "emit/sine_oscillator.zk.json",
      "lines": 77,
      "ok": true,
      "tier": "LOCAL"
    }
  ],
  "proof": {
    "theorem": "sine_oscillator_amplitude_bound",
    "claim": "|A\u00b7sin(\u03c9t)| \u2264 A for A \u2208 [0,1], \u03c9 \u2208 [0, 1e4], t \u2265 0",
    "trail_file": "proof/sine_oscillator_amplitude_bound.axioms.txt",
    "clean": true,
    "forbidden_axioms_found": [],
    "rederived": "2026-07-02T04:37:24Z",
    "source_artifact": "examples/sine_oscillator.eml  ->  eml-compile --target lean   (the artifact the zoo ships; NOT a probe)",
    "reverify": "make verify-proof",
    "tier": "REPLAY (re-derive: TOOLCHAIN \u2014 Lean)"
  },
  "sim": {
    "params": "A=0.8, \u03c9=2\u03c0",
    "samples": 600,
    "trace_csv": "trace.csv",
    "plot_png": "sine.png",
    "check": {
      "quantity": "max|A\u00b7sin(\u03c9t)|",
      "value": 0.8,
      "relation": "\u2264",
      "bound": 0.8,
      "holds": true,
      "context": "amplitude bound |\u00b7| \u2264 0.8"
    },
    "tier": "LOCAL"
  },
  "hardware": {
    "tier": "none",
    "note": "\u2014 (numeric kernel; no dedicated hardware capture)"
  }
}