eml-stdlib 0.4.0__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- eml_stdlib/__init__.py +81 -0
- eml_stdlib/ballistics/air_density.eml +73 -0
- eml_stdlib/ballistics/ballistic_solver.eml +102 -0
- eml_stdlib/ballistics/coriolis.eml +60 -0
- eml_stdlib/ballistics/drag.eml +44 -0
- eml_stdlib/ballistics/gravity.eml +52 -0
- eml_stdlib/ballistics/muzzle_velocity.eml +42 -0
- eml_stdlib/ballistics/spin_drift.eml +60 -0
- eml_stdlib/ballistics/time_of_flight.eml +79 -0
- eml_stdlib/ballistics/wind.eml +58 -0
- eml_stdlib/biology/abilities/ballistic_armor.eml +61 -0
- eml_stdlib/biology/abilities/bite_force.eml +48 -0
- eml_stdlib/biology/abilities/chromatophore.eml +50 -0
- eml_stdlib/biology/abilities/discharge.eml +45 -0
- eml_stdlib/biology/abilities/elastic_energy.eml +42 -0
- eml_stdlib/biology/abilities/locomotion.eml +50 -0
- eml_stdlib/biology/abilities/muscle_power.eml +47 -0
- eml_stdlib/biology/abilities/sprint.eml +36 -0
- eml_stdlib/biology/abilities/texture_match.eml +49 -0
- eml_stdlib/biology/abilities/toxin.eml +44 -0
- eml_stdlib/biology/cone_l.eml +36 -0
- eml_stdlib/biology/cone_s.eml +32 -0
- eml_stdlib/biology/cryptochrome.eml +44 -0
- eml_stdlib/biology/geomagnetic_field.eml +32 -0
- eml_stdlib/biology/goldman_equation.eml +41 -0
- eml_stdlib/biology/hill_equation.eml +65 -0
- eml_stdlib/biology/hodgkin_huxley.eml +108 -0
- eml_stdlib/biology/michaelis_menten.eml +65 -0
- eml_stdlib/biology/plume_diffusion.eml +47 -0
- eml_stdlib/biology/receptor_binding.eml +35 -0
- eml_stdlib/biology/rod_sensitivity.eml +38 -0
- eml_stdlib/biology/tapetum.eml +70 -0
- eml_stdlib/carriers/acoustic_cloak.eml +56 -0
- eml_stdlib/carriers/ferron_emission.eml +55 -0
- eml_stdlib/carriers/ferron_logic.eml +45 -0
- eml_stdlib/carriers/ferron_propagation.eml +69 -0
- eml_stdlib/carriers/mach_zehnder.eml +52 -0
- eml_stdlib/carriers/magnon_dispersion.eml +57 -0
- eml_stdlib/carriers/magnon_logic.eml +45 -0
- eml_stdlib/carriers/optical_neuron.eml +55 -0
- eml_stdlib/carriers/phonon_bandgap.eml +54 -0
- eml_stdlib/carriers/ring_resonator.eml +48 -0
- eml_stdlib/carriers/spin_torque.eml +61 -0
- eml_stdlib/carriers/thermal_rectifier.eml +63 -0
- eml_stdlib/catalog.json +4209 -0
- eml_stdlib/circuits/buck_converter.eml +74 -0
- eml_stdlib/circuits/cmos_inverter.eml +75 -0
- eml_stdlib/circuits/h_bridge.eml +69 -0
- eml_stdlib/circuits/ldo.eml +66 -0
- eml_stdlib/circuits/mosfet_iv.eml +59 -0
- eml_stdlib/circuits/pll_loop.eml +63 -0
- eml_stdlib/circuits/rc_filter.eml +98 -0
- eml_stdlib/circuits/voltage_divider.eml +68 -0
- eml_stdlib/control/bangbang.eml +34 -0
- eml_stdlib/control/deadband.eml +28 -0
- eml_stdlib/control/hysteresis.eml +28 -0
- eml_stdlib/control/kalman_1d.eml +53 -0
- eml_stdlib/control/lqr_1d.eml +47 -0
- eml_stdlib/control/pid.eml +38 -0
- eml_stdlib/gaming/animation/bounce.eml +39 -0
- eml_stdlib/gaming/animation/ease_in.eml +27 -0
- eml_stdlib/gaming/animation/ease_in_out.eml +29 -0
- eml_stdlib/gaming/animation/ease_out.eml +27 -0
- eml_stdlib/gaming/animation/ik_2bone.eml +57 -0
- eml_stdlib/gaming/animation/spring.eml +39 -0
- eml_stdlib/gaming/audio/distance_attenuation.eml +50 -0
- eml_stdlib/gaming/audio/doppler.eml +39 -0
- eml_stdlib/gaming/audio/lowpass_audio.eml +32 -0
- eml_stdlib/gaming/audio/reverb_delay.eml +41 -0
- eml_stdlib/gaming/camera/dof_blur.eml +30 -0
- eml_stdlib/gaming/camera/fov_projection.eml +47 -0
- eml_stdlib/gaming/camera/orbit.eml +48 -0
- eml_stdlib/gaming/camera/shake.eml +20 -0
- eml_stdlib/gaming/lighting/ambient_occlusion.eml +40 -0
- eml_stdlib/gaming/lighting/area_light.eml +50 -0
- eml_stdlib/gaming/lighting/fog_exp.eml +28 -0
- eml_stdlib/gaming/lighting/fog_exp2.eml +30 -0
- eml_stdlib/gaming/lighting/point_light.eml +33 -0
- eml_stdlib/gaming/lighting/spot_light.eml +43 -0
- eml_stdlib/gaming/noise/fbm.eml +65 -0
- eml_stdlib/gaming/noise/perlin_2d.eml +65 -0
- eml_stdlib/gaming/noise/perlin_3d.eml +63 -0
- eml_stdlib/gaming/noise/simplex_2d.eml +67 -0
- eml_stdlib/gaming/noise/turbulence.eml +46 -0
- eml_stdlib/gaming/noise/value_noise.eml +45 -0
- eml_stdlib/gaming/noise/voronoi_2d.eml +83 -0
- eml_stdlib/gaming/noise/white_noise.eml +47 -0
- eml_stdlib/gaming/noise/worley.eml +79 -0
- eml_stdlib/gaming/particles/drag.eml +30 -0
- eml_stdlib/gaming/particles/emitter_radial.eml +35 -0
- eml_stdlib/gaming/particles/fade.eml +36 -0
- eml_stdlib/gaming/particles/gravity_particle.eml +32 -0
- eml_stdlib/gaming/particles/size_over_life.eml +28 -0
- eml_stdlib/gaming/physics/aabb_overlap.eml +38 -0
- eml_stdlib/gaming/physics/buoyancy.eml +43 -0
- eml_stdlib/gaming/physics/circle_collision.eml +46 -0
- eml_stdlib/gaming/physics/impulse_resolve.eml +39 -0
- eml_stdlib/gaming/physics/rigid_body_2d.eml +61 -0
- eml_stdlib/gaming/physics/spring_damper.eml +30 -0
- eml_stdlib/gaming/physics/verlet.eml +29 -0
- eml_stdlib/gaming/shading/fresnel.eml +57 -0
- eml_stdlib/gaming/shading/matcap.eml +34 -0
- eml_stdlib/gaming/shading/pbr_diffuse.eml +41 -0
- eml_stdlib/gaming/shading/pbr_specular.eml +75 -0
- eml_stdlib/gaming/shading/subsurface.eml +52 -0
- eml_stdlib/gaming/shading/toon.eml +30 -0
- eml_stdlib/gaming/terrain/biome_select.eml +41 -0
- eml_stdlib/gaming/terrain/cliff_detect.eml +35 -0
- eml_stdlib/gaming/terrain/erosion_hydraulic.eml +57 -0
- eml_stdlib/gaming/terrain/erosion_thermal.eml +44 -0
- eml_stdlib/gaming/terrain/heightmap.eml +33 -0
- eml_stdlib/gaming/textures/brick.eml +27 -0
- eml_stdlib/gaming/textures/caustics.eml +25 -0
- eml_stdlib/gaming/textures/checkerboard.eml +27 -0
- eml_stdlib/gaming/textures/fire.eml +26 -0
- eml_stdlib/gaming/textures/marble.eml +24 -0
- eml_stdlib/gaming/textures/rust.eml +23 -0
- eml_stdlib/gaming/textures/water_surface.eml +49 -0
- eml_stdlib/gaming/textures/wood.eml +41 -0
- eml_stdlib/math/abs.eml +45 -0
- eml_stdlib/math/atan.eml +32 -0
- eml_stdlib/math/atan2.eml +61 -0
- eml_stdlib/math/bessel_j0.eml +65 -0
- eml_stdlib/math/cos.eml +42 -0
- eml_stdlib/math/cosh.eml +24 -0
- eml_stdlib/math/erf.eml +66 -0
- eml_stdlib/math/exp.eml +49 -0
- eml_stdlib/math/gamma.eml +55 -0
- eml_stdlib/math/gaussian.eml +18 -0
- eml_stdlib/math/log.eml +59 -0
- eml_stdlib/math/pow.eml +51 -0
- eml_stdlib/math/relu.eml +63 -0
- eml_stdlib/math/sigmoid.eml +21 -0
- eml_stdlib/math/sin.eml +37 -0
- eml_stdlib/math/sinh.eml +24 -0
- eml_stdlib/math/softmax.eml +87 -0
- eml_stdlib/math/sqrt.eml +46 -0
- eml_stdlib/math/tan.eml +36 -0
- eml_stdlib/math/tanh.eml +54 -0
- eml_stdlib/ml/attention.eml +70 -0
- eml_stdlib/ml/cross_entropy.eml +85 -0
- eml_stdlib/ml/gelu.eml +51 -0
- eml_stdlib/ml/layernorm.eml +49 -0
- eml_stdlib/ml/leaky_relu.eml +51 -0
- eml_stdlib/ml/relu.eml +63 -0
- eml_stdlib/ml/rotary_embed.eml +64 -0
- eml_stdlib/ml/silu.eml +40 -0
- eml_stdlib/ml/softmax.eml +87 -0
- eml_stdlib/physics/coulomb.eml +48 -0
- eml_stdlib/physics/damped_oscillator.eml +20 -0
- eml_stdlib/physics/diffusion.eml +45 -0
- eml_stdlib/physics/gravity.eml +60 -0
- eml_stdlib/physics/hooke.eml +56 -0
- eml_stdlib/physics/navier_stokes_1d.eml +57 -0
- eml_stdlib/physics/planck_radiation.eml +77 -0
- eml_stdlib/physics/stefan_boltzmann.eml +75 -0
- eml_stdlib/physics/wave_propagation.eml +52 -0
- eml_stdlib/quantum/cnot.eml +72 -0
- eml_stdlib/quantum/grover_oracle.eml +69 -0
- eml_stdlib/quantum/hadamard.eml +73 -0
- eml_stdlib/quantum/pauli_x.eml +29 -0
- eml_stdlib/quantum/pauli_z.eml +29 -0
- eml_stdlib/quantum/phase_gate.eml +76 -0
- eml_stdlib/quantum/rotation_rz.eml +92 -0
- eml_stdlib/sensors/accelerometer.eml +59 -0
- eml_stdlib/sensors/hall_effect.eml +42 -0
- eml_stdlib/sensors/photodetector.eml +58 -0
- eml_stdlib/sensors/rtd.eml +57 -0
- eml_stdlib/sensors/strain_gauge.eml +63 -0
- eml_stdlib/sensors/thermistor.eml +71 -0
- eml_stdlib/signal/bandpass.eml +39 -0
- eml_stdlib/signal/chirp.eml +42 -0
- eml_stdlib/signal/dft_single.eml +30 -0
- eml_stdlib/signal/fft_butterfly.eml +36 -0
- eml_stdlib/signal/highpass.eml +45 -0
- eml_stdlib/signal/lowpass.eml +49 -0
- eml_stdlib/signal/matched_filter.eml +48 -0
- eml_stdlib/signal/notch_filter.eml +47 -0
- eml_stdlib/signal/window_hamming.eml +47 -0
- eml_stdlib/signal/window_hann.eml +50 -0
- eml_stdlib-0.4.0.dist-info/METADATA +453 -0
- eml_stdlib-0.4.0.dist-info/RECORD +185 -0
- eml_stdlib-0.4.0.dist-info/WHEEL +5 -0
- eml_stdlib-0.4.0.dist-info/licenses/LICENSE +21 -0
- eml_stdlib-0.4.0.dist-info/top_level.txt +1 -0
|
@@ -0,0 +1,453 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: eml-stdlib
|
|
3
|
+
Version: 0.4.0
|
|
4
|
+
Summary: EML standard-library prototype for game development. PBR shaders, procedural noise, procedural textures, lighting, terrain, animation curves, particles, audio attenuation + Doppler, rigid-body physics, and math/signal/control/biology/ballistics/ML kernels with explicit verification-contract metadata where available.
|
|
5
|
+
Author: Mosa Creates LLC
|
|
6
|
+
Author-email: "Arturo R. Almaguer" <almaguer1986@gmail.com>
|
|
7
|
+
Maintainer-email: "Arturo R. Almaguer" <almaguer1986@gmail.com>
|
|
8
|
+
License: MIT
|
|
9
|
+
Project-URL: Homepage, https://monogate.dev/learn/eml/intro
|
|
10
|
+
Project-URL: Repository, https://github.com/agent-maestro/eml-stdlib
|
|
11
|
+
Project-URL: Issues, https://github.com/agent-maestro/eml-stdlib/issues
|
|
12
|
+
Project-URL: Forge Compiler, https://github.com/agent-maestro/forge
|
|
13
|
+
Project-URL: MachLib, https://machlib.org
|
|
14
|
+
Keywords: eml,compiler,stdlib,formal-verification,lean,machlib,godot,shader,glsl,hlsl,pbr,noise,perlin,ballistics,physics,ml,signal-processing,quantum,photonics,spintronics,phononics,fpga,spice
|
|
15
|
+
Classifier: Development Status :: 4 - Beta
|
|
16
|
+
Classifier: Intended Audience :: Developers
|
|
17
|
+
Classifier: Intended Audience :: Science/Research
|
|
18
|
+
Classifier: License :: OSI Approved :: MIT License
|
|
19
|
+
Classifier: Operating System :: OS Independent
|
|
20
|
+
Classifier: Programming Language :: Python :: 3
|
|
21
|
+
Classifier: Programming Language :: Python :: 3.11
|
|
22
|
+
Classifier: Programming Language :: Python :: 3.12
|
|
23
|
+
Classifier: Topic :: Scientific/Engineering
|
|
24
|
+
Classifier: Topic :: Scientific/Engineering :: Mathematics
|
|
25
|
+
Classifier: Topic :: Software Development :: Compilers
|
|
26
|
+
Classifier: Topic :: Software Development :: Libraries
|
|
27
|
+
Classifier: Typing :: Typed
|
|
28
|
+
Requires-Python: >=3.11
|
|
29
|
+
Description-Content-Type: text/markdown
|
|
30
|
+
License-File: LICENSE
|
|
31
|
+
Provides-Extra: dev
|
|
32
|
+
Requires-Dist: pytest>=8; extra == "dev"
|
|
33
|
+
Requires-Dist: ruff>=0.5; extra == "dev"
|
|
34
|
+
Requires-Dist: mypy>=1.10; extra == "dev"
|
|
35
|
+
Dynamic: license-file
|
|
36
|
+
|
|
37
|
+
# eml-stdlib
|
|
38
|
+
|
|
39
|
+
**An EML standard-library prototype for game development.**
|
|
40
|
+
Shaders, textures, and physics formulas carry explicit verification contracts
|
|
41
|
+
or proof-obligation hooks where available.
|
|
42
|
+
|
|
43
|
+
Plus the math, signal-processing, control, biology, ballistics, and ML kernels
|
|
44
|
+
that built the rest of the Monogate stack. Modules are intended to compile to
|
|
45
|
+
GDScript, GLSL, HLSL, C, Python, and Lean through Forge-supported targets;
|
|
46
|
+
`@verify` contracts are tracked as proof obligations against MachLib.
|
|
47
|
+
|
|
48
|
+
```bash
|
|
49
|
+
pip install eml-stdlib
|
|
50
|
+
eml-compile eml_stdlib/gaming/shading/pbr_specular.eml --target glsl
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
And get a PBR specular shader with explicit verification metadata.
|
|
54
|
+
|
|
55
|
+
## At a glance
|
|
56
|
+
|
|
57
|
+
- **178 modules** across **22 categories**
|
|
58
|
+
- **521 functions** total
|
|
59
|
+
- **466 carry an `@verify(lean, …)` contract** (89%)
|
|
60
|
+
- Every function declares its **Pfaffian chain order** in the type
|
|
61
|
+
|
|
62
|
+
## Used by
|
|
63
|
+
|
|
64
|
+
Four Godot 4 prototypes are live consumers of the kernels here. Each one is
|
|
65
|
+
a working application of a different stdlib slice; together they cover most
|
|
66
|
+
of what game engines actually do at runtime.
|
|
67
|
+
|
|
68
|
+
| Prototype | Stdlib slice exercised | What it proves |
|
|
69
|
+
|-----------|------------------------|----------------|
|
|
70
|
+
| **spellforge** | `math/`, `signal/` | Verified expression-tree gameplay — every spell is an EML expression that type-checks as a function |
|
|
71
|
+
| **longshot** | `ballistics/` (mirrored line-for-line) | Real exterior ballistics in a 2D sniper sim — drag, gravity, wind, Coriolis, spin drift |
|
|
72
|
+
| **apex-predator** | `ballistics/` + `biology/` + `biology/abilities/` + `signal/` | Asymmetric PvP with split-screen + per-viewport fragment-shader fog of war; 25 species evolve a beast through 4 stages |
|
|
73
|
+
| **monowave** | local `eml/` mirrors of `signal/` + `gaming/noise/` + `gaming/shading/` | Deterministic music visualizer — same audio in, same visuals out, no randomness anywhere |
|
|
74
|
+
|
|
75
|
+
The 10 kernels in `biology/abilities/` were promoted up from apex-predator's
|
|
76
|
+
local `eml/abilities/` directory in v0.4.0. The local copies remain in that
|
|
77
|
+
repo because `scripts/build_stdlib.py` reads from them as the source-of-truth;
|
|
78
|
+
deleting them locally would break the stdlib build.
|
|
79
|
+
|
|
80
|
+
## Use
|
|
81
|
+
|
|
82
|
+
After `pip install`, import the location of the `.eml` source files
|
|
83
|
+
into your Forge project:
|
|
84
|
+
|
|
85
|
+
```python
|
|
86
|
+
from eml_stdlib import path_to
|
|
87
|
+
math_dir = path_to('math') # Path to math/ subdir
|
|
88
|
+
sigmoid = path_to('math/sigmoid.eml') # Specific module
|
|
89
|
+
```
|
|
90
|
+
|
|
91
|
+
Inside an EML source file, reference modules with `use`:
|
|
92
|
+
|
|
93
|
+
```eml
|
|
94
|
+
use stdlib::math::sigmoid;
|
|
95
|
+
use stdlib::ml::attention;
|
|
96
|
+
use stdlib::circuits::rc_filter;
|
|
97
|
+
```
|
|
98
|
+
|
|
99
|
+
## Directory map
|
|
100
|
+
|
|
101
|
+
### `math/` — 20 modules / 67 fns / 63 verified
|
|
102
|
+
|
|
103
|
+
Math primitives — transcendentals, special functions, identities.
|
|
104
|
+
|
|
105
|
+
| File | Functions | Chain | Verified | Origin |
|
|
106
|
+
|------|-----------|-------|----------|--------|
|
|
107
|
+
| `abs.eml` | abs_kernel, sign, saturate, softsign | 0 | 4/4 | **new** |
|
|
108
|
+
| `atan.eml` | atan_kernel, atan_at_zero, atan_at_one | 0,1 | 3/3 | **new** |
|
|
109
|
+
| `atan2.eml` | atan2_pos_x, atan2_neg_x_upper, atan2_neg_x_lower, … (+2) | 0,2 | 5/5 | **new** |
|
|
110
|
+
| `bessel_j0.eml` | bessel_j0_small, bessel_j0_large, bessel_j0_at_zero | 0,1 | 3/3 | **new** |
|
|
111
|
+
| `cos.eml` | cos_kernel, cos_at_zero, cos_sq, pythagorean | 0,1 | 4/4 | **new** |
|
|
112
|
+
| `cosh.eml` | cosh_kernel, cosh_at_zero | 0,1 | 2/2 | **new** |
|
|
113
|
+
| `erf.eml` | erf_kernel, erf_at_zero, erfc, erf_as | 0,1 | 4/4 | **new** |
|
|
114
|
+
| `exp.eml` | exp_kernel, exp_neg, expm1 | 1 | 3/3 | **new** |
|
|
115
|
+
| `gamma.eml` | ln_gamma_stirling, gamma_stirling, gamma_at_one | 0,1,2 | 3/3 | **new** |
|
|
116
|
+
| `gaussian.eml` | gaussian | 1 | 0/1 | forge/examples/gaussian.eml |
|
|
117
|
+
| `log.eml` | ln_kernel, log2, log10, log_b, log1p | 1,2 | 5/5 | **new** |
|
|
118
|
+
| `pow.eml` | pow_kernel, sq, cube, pow4, pow8 | 0,2 | 5/5 | **new** |
|
|
119
|
+
| `relu.eml` | relu, leaky_relu, relu6, prelu | 0 | 3/4 | forge/industries/ml/activations/relu.eml |
|
|
120
|
+
| `sigmoid.eml` | sigmoid, silu | 2 | 0/2 | forge/examples/sigmoid.eml |
|
|
121
|
+
| `sin.eml` | sin_kernel, sin_at_zero, sin_sq | 0,1 | 3/3 | **new** |
|
|
122
|
+
| `sinh.eml` | sinh_kernel, sinh_at_zero | 0,1 | 2/2 | **new** |
|
|
123
|
+
| `softmax.eml` | softmax_shift_exp, softmax_normalize, softmax_two_logit, … (+1) | 0,1,2 | 4/4 | forge/industries/ml/activations/softmax.eml |
|
|
124
|
+
| `sqrt.eml` | sqrt_kernel, hypot2, hypot3, rsqrt | 1 | 4/4 | **new** |
|
|
125
|
+
| `tan.eml` | tan_kernel, tan_at_zero, two_tan | 0,2 | 3/3 | **new** |
|
|
126
|
+
| `tanh.eml` | tanh_activation, tanh_from_sigmoid, hard_tanh | 0,1,2 | 3/3 | forge/industries/ml/activations/tanh.eml |
|
|
127
|
+
|
|
128
|
+
### `signal/` — 10 modules / 20 fns / 20 verified
|
|
129
|
+
|
|
130
|
+
DSP — filters, FFT, windows, matched-filter.
|
|
131
|
+
|
|
132
|
+
| File | Functions | Chain | Verified | Origin |
|
|
133
|
+
|------|-----------|-------|----------|--------|
|
|
134
|
+
| `bandpass.eml` | bandpass_step, alphas_from_cutoffs | 0 | 2/2 | **new** |
|
|
135
|
+
| `chirp.eml` | chirp_frequency | 0 | 1/1 | monogate-research/exploration/bat_sonar/eml/chirp.eml |
|
|
136
|
+
| `dft_single.eml` | dft_single | 1 | 1/1 | monogate-research/industries/signal_processing/kernels/dft_single.eml |
|
|
137
|
+
| `fft_butterfly.eml` | fft_butterfly | 1 | 1/1 | monogate-research/industries/signal_processing/kernels/fft_butterfly.eml |
|
|
138
|
+
| `highpass.eml` | hpf1_step, alpha_from_rc_dt, alpha_from_cutoff | 0 | 3/3 | **new** |
|
|
139
|
+
| `lowpass.eml` | lpf1_step, alpha_from_rc_dt, alpha_from_cutoff | 0 | 3/3 | **new** |
|
|
140
|
+
| `matched_filter.eml` | matched_filter_score | 0 | 1/1 | monogate-research/exploration/bat_sonar/eml/matched_filter.eml |
|
|
141
|
+
| `notch_filter.eml` | notch_coeffs, notch_step | 0,1 | 2/2 | **new** |
|
|
142
|
+
| `window_hamming.eml` | hamming, hamming_at_start, hamming_apply | 0,1 | 3/3 | **new** |
|
|
143
|
+
| `window_hann.eml` | hann, hann_at_start, hann_apply | 0,1 | 3/3 | **new** |
|
|
144
|
+
|
|
145
|
+
### `control/` — 6 modules / 12 fns / 12 verified
|
|
146
|
+
|
|
147
|
+
Control — PID, Kalman, LQR, hysteresis, deadband.
|
|
148
|
+
|
|
149
|
+
| File | Functions | Chain | Verified | Origin |
|
|
150
|
+
|------|-----------|-------|----------|--------|
|
|
151
|
+
| `bangbang.eml` | bangbang, bangbang_symmetric | 0 | 2/2 | **new** |
|
|
152
|
+
| `deadband.eml` | deadband, deadband_asymmetric | 0 | 2/2 | **new** |
|
|
153
|
+
| `hysteresis.eml` | hysteresis_step | 0 | 1/1 | **new** |
|
|
154
|
+
| `kalman_1d.eml` | kalman1d_predict, kalman1d_update, kalman1d_step | 0 | 3/3 | **new** |
|
|
155
|
+
| `lqr_1d.eml` | riccati, lqr_gain, lqr_control | 0,1 | 3/3 | **new** |
|
|
156
|
+
| `pid.eml` | pid | 0 | 1/1 | forge/examples/pid_controller.eml |
|
|
157
|
+
|
|
158
|
+
### `physics/` — 9 modules / 30 fns / 28 verified
|
|
159
|
+
|
|
160
|
+
Physics — wave propagation, oscillators, blackbody, fluid flow.
|
|
161
|
+
|
|
162
|
+
| File | Functions | Chain | Verified | Origin |
|
|
163
|
+
|------|-----------|-------|----------|--------|
|
|
164
|
+
| `coulomb.eml` | force, field, potential_energy, potential | 0 | 4/4 | **new** |
|
|
165
|
+
| `damped_oscillator.eml` | damped_wave | 2 | 0/1 | forge/examples/damped_wave.eml |
|
|
166
|
+
| `diffusion.eml` | concentration, sigma, fick_first_law | 0,1 | 3/3 | **new** |
|
|
167
|
+
| `gravity.eml` | newtonian_acceleration, surface_gravity_step | 0 | 1/2 | forge/industries/gaming/physics/gravity.eml |
|
|
168
|
+
| `hooke.eml` | force, potential_energy, series_stiffness, … (+2) | 0,1 | 5/5 | **new** |
|
|
169
|
+
| `navier_stokes_1d.eml` | pressure_term, viscous_term, convective_term, rhs, reynolds | 0 | 5/5 | **new** |
|
|
170
|
+
| `planck_radiation.eml` | spectral_radiance, wien_lambda_max, rayleigh_jeans_radiance | 0,1 | 3/3 | forge/industries/scientific/physics/planck_radiation.eml |
|
|
171
|
+
| `stefan_boltzmann.eml` | radiative_flux, net_exchange, wien_peak_wavelength | 0,1 | 3/3 | forge/industries/scientific/climate/stefan_boltzmann.eml |
|
|
172
|
+
| `wave_propagation.eml` | wave, wavelength, frequency, phase_velocity | 0,1 | 4/4 | **new** |
|
|
173
|
+
|
|
174
|
+
### `circuits/` — 8 modules / 37 fns / 26 verified
|
|
175
|
+
|
|
176
|
+
Analog circuits — RC, voltage divider, CMOS, MOSFET, PLL, LDO, buck.
|
|
177
|
+
|
|
178
|
+
| File | Functions | Chain | Verified | Origin |
|
|
179
|
+
|------|-----------|-------|----------|--------|
|
|
180
|
+
| `buck_converter.eml` | circuit, output_voltage, inductor_ripple, … (+2) | 0 | 4/5 | **new** |
|
|
181
|
+
| `cmos_inverter.eml` | vout_at_low_input, vout_at_high_input, switching_threshold, … (+3) | 0 | 3/6 | forge/examples/carriers/electronics/cmos_inverter.eml |
|
|
182
|
+
| `h_bridge.eml` | circuit, forward_voltage, reverse_voltage, dead_time_loss | 0 | 3/4 | **new** |
|
|
183
|
+
| `ldo.eml` | circuit, output_voltage, efficiency, … (+2) | 0 | 4/5 | **new** |
|
|
184
|
+
| `mosfet_iv.eml` | drain_current_sat, id_at_threshold, id_prefactor | 0 | 2/3 | forge/examples/carriers/electronics/mosfet_iv.eml |
|
|
185
|
+
| `pll_loop.eml` | loop_gain, steady_state_error_at_zero_offset, loop_gain_certificate, … (+1) | 0 | 2/4 | forge/examples/carriers/electronics/pll_loop.eml |
|
|
186
|
+
| `rc_filter.eml` | circuit, tau, vout_steady, … (+3) | 0,1 | 5/6 | forge/examples/rc_filter.eml |
|
|
187
|
+
| `voltage_divider.eml` | circuit, vout_divider, rsum, vout_symmetric | 0 | 3/4 | forge/examples/voltage_divider.eml |
|
|
188
|
+
|
|
189
|
+
### `sensors/` — 6 modules / 24 fns / 23 verified
|
|
190
|
+
|
|
191
|
+
Sensors — Hall effect, thermistor, RTD, accelerometer, strain gauge.
|
|
192
|
+
|
|
193
|
+
| File | Functions | Chain | Verified | Origin |
|
|
194
|
+
|------|-----------|-------|----------|--------|
|
|
195
|
+
| `accelerometer.eml` | lsb_to_si, tilt_angle, tilt_two_axis, magnitude | 0,1,2 | 4/4 | **new** |
|
|
196
|
+
| `hall_effect.eml` | hall_voltage, hall_coefficient, b_from_voltage | 0 | 3/3 | **new** |
|
|
197
|
+
| `photodetector.eml` | photocurrent, current_at_zero_power, nonneg_current | 0 | 2/3 | forge/examples/photonics/components/photodetector.eml |
|
|
198
|
+
| `rtd.eml` | resistance_pos, resistance_neg, temperature_pos | 0,1 | 3/3 | **new** |
|
|
199
|
+
| `strain_gauge.eml` | resistance_change, strain_from_dr, quarter_bridge_voltage, … (+3) | 0 | 6/6 | **new** |
|
|
200
|
+
| `thermistor.eml` | resistance_beta, temperature_beta, inv_temperature_steinhart, … (+2) | 0,1 | 5/5 | **new** |
|
|
201
|
+
|
|
202
|
+
### `biology/` — 12 modules / 18 fns / 15 verified
|
|
203
|
+
|
|
204
|
+
Biology — vision, olfaction, magnetoreception, ion channels.
|
|
205
|
+
|
|
206
|
+
| File | Functions | Chain | Verified | Origin |
|
|
207
|
+
|------|-----------|-------|----------|--------|
|
|
208
|
+
| `cone_l.eml` | cone_l_sensitivity | 1 | 1/1 | monogate-research/exploration/cat_vision/eml/cone_l.eml |
|
|
209
|
+
| `cone_s.eml` | cone_s_sensitivity | 1 | 1/1 | monogate-research/exploration/cat_vision/eml/cone_s.eml |
|
|
210
|
+
| `cryptochrome.eml` | cryptochrome_yield | 1 | 1/1 | monogate-research/exploration/pigeon_magnetoreception/eml/cryptochrome.eml |
|
|
211
|
+
| `geomagnetic_field.eml` | geomagnetic_field | 1 | 1/1 | monogate-research/exploration/pigeon_magnetoreception/eml/geomagnetic_field.eml |
|
|
212
|
+
| `goldman_equation.eml` | membrane_potential, nernst | 1 | 2/2 | **new** |
|
|
213
|
+
| `hill_equation.eml` | hill_velocity, hill_logit | 1,2 | 1/2 | forge/industries/chemistry/kinetics/hill.eml |
|
|
214
|
+
| `hodgkin_huxley.eml` | voltage_step, gating_step | 0 | 2/2 | forge/industries/scientific/biology/hodgkin_huxley_step.eml |
|
|
215
|
+
| `michaelis_menten.eml` | velocity, lineweaver_burk, eadie_hofstee | 0 | 1/3 | forge/industries/chemistry/kinetics/michaelis_menten.eml |
|
|
216
|
+
| `plume_diffusion.eml` | plume_concentration | 1 | 1/1 | monogate-research/exploration/dog_olfaction/eml/plume_diffusion.eml |
|
|
217
|
+
| `receptor_binding.eml` | receptor_binding | 0 | 1/1 | monogate-research/exploration/dog_olfaction/eml/receptor_binding.eml |
|
|
218
|
+
| `rod_sensitivity.eml` | rod_sensitivity | 1 | 1/1 | monogate-research/exploration/cat_vision/eml/rod_sensitivity.eml |
|
|
219
|
+
| `tapetum.eml` | tapetum_gain, tapetum_amplify | 1 | 2/2 | monogate-research/exploration/cat_vision/eml/tapetum.eml |
|
|
220
|
+
|
|
221
|
+
### `biology/abilities/` — 10 modules / 30 fns / 30 verified
|
|
222
|
+
|
|
223
|
+
Biology / abilities — creature combat, movement, and cover: elastic energy, locomotion, chromatophore camouflage, toxin pharmacokinetics, ballistic armor, bioelectric discharge, texture matching, sprint metabolism, muscle power, bite force.
|
|
224
|
+
|
|
225
|
+
| File | Functions | Chain | Verified | Origin |
|
|
226
|
+
|------|-----------|-------|----------|--------|
|
|
227
|
+
| `abilities/ballistic_armor.eml` | kinetic_energy, energy_absorbed, energy_penetrating, … (+1) | 0,1 | 4/4 | apex-predator/eml/abilities/ballistic_armor.eml |
|
|
228
|
+
| `abilities/bite_force.eml` | bite_force_n, damage_per_bite, stage_multiplier | 0,1 | 3/3 | apex-predator/eml/abilities/bite_force.eml |
|
|
229
|
+
| `abilities/chromatophore.eml` | bragg_wavelength, transparency, detection_contrast | 0,1 | 3/3 | apex-predator/eml/abilities/chromatophore.eml |
|
|
230
|
+
| `abilities/discharge.eml` | voltage, voltage_default, pulse_energy | 0,1 | 3/3 | apex-predator/eml/abilities/discharge.eml |
|
|
231
|
+
| `abilities/elastic_energy.eml` | takeoff_velocity, jump_height, jump_range | 0,1 | 3/3 | apex-predator/eml/abilities/elastic_energy.eml |
|
|
232
|
+
| `abilities/locomotion.eml` | ground_speed, speed_multiplier, wall_climb_capable | 0 | 3/3 | apex-predator/eml/abilities/locomotion.eml |
|
|
233
|
+
| `abilities/muscle_power.eml` | total_power, power_to_weight, top_speed_proxy | 0,1 | 3/3 | apex-predator/eml/abilities/muscle_power.eml |
|
|
234
|
+
| `abilities/sprint.eml` | velocity, distance_covered | 1 | 2/2 | apex-predator/eml/abilities/sprint.eml |
|
|
235
|
+
| `abilities/texture_match.eml` | match_score, detection_probability, ink_visibility | 0,1 | 3/3 | apex-predator/eml/abilities/texture_match.eml |
|
|
236
|
+
| `abilities/toxin.eml` | concentration, damage_rate, total_damage | 1 | 3/3 | apex-predator/eml/abilities/toxin.eml |
|
|
237
|
+
|
|
238
|
+
### `carriers/` — 12 modules / 40 fns / 24 verified
|
|
239
|
+
|
|
240
|
+
Wave carriers — photonic, magnonic, phononic, ferronic.
|
|
241
|
+
|
|
242
|
+
| File | Functions | Chain | Verified | Origin |
|
|
243
|
+
|------|-----------|-------|----------|--------|
|
|
244
|
+
| `acoustic_cloak.eml` | shell_index, outer_boundary_index, shell_thickness | 0 | 2/3 | forge/examples/carriers/phononics/acoustic_cloak.eml |
|
|
245
|
+
| `ferron_emission.eml` | thz_power, power_at_zero_drive, k_emit_certificate | 0 | 2/3 | forge/examples/carriers/ferronics/ferron_emission.eml |
|
|
246
|
+
| `ferron_logic.eml` | output_amplitude, constructive_certificate, p_squared_witness, … (+0) | 1 | 2/3 | forge/examples/carriers/ferronics/ferron_logic.eml |
|
|
247
|
+
| `ferron_propagation.eml` | polarization, envelope, polarization_at_origin, … (+1) | 1 | 2/4 | forge/examples/carriers/ferronics/ferron_propagation.eml |
|
|
248
|
+
| `mach_zehnder.eml` | intensity_out, intensity_at_zero, cos_sq_at_zero | 1 | 2/3 | forge/examples/carriers/photonics/mach_zehnder.eml |
|
|
249
|
+
| `magnon_dispersion.eml` | omega, omega_at_zero_k, fmr_freq | 0 | 2/3 | forge/examples/carriers/spintronics/magnon_dispersion.eml |
|
|
250
|
+
| `magnon_logic.eml` | output_amplitude, constructive_certificate, intensity_witness, … (+0) | 1 | 2/3 | forge/examples/carriers/spintronics/magnon_logic.eml |
|
|
251
|
+
| `optical_neuron.eml` | activation, dark_output, isat_certificate | 0,1 | 2/3 | forge/examples/carriers/photonics/optical_neuron.eml |
|
|
252
|
+
| `phonon_bandgap.eml` | transmission, transmission_at_zero, sin_sq_at_zero | 1 | 2/3 | forge/examples/carriers/phononics/phonon_bandgap.eml |
|
|
253
|
+
| `ring_resonator.eml` | transmission, peak_transmission, fsr_separation | 0,1 | 2/3 | forge/examples/carriers/photonics/ring_resonator.eml |
|
|
254
|
+
| `spin_torque.eml` | larmor_frequency, damping_prefactor, larmor_certificate, … (+1) | 0 | 2/4 | forge/examples/carriers/spintronics/spin_torque.eml |
|
|
255
|
+
| `thermal_rectifier.eml` | forward_conductance, rectification_ratio, asymmetry, … (+2) | 0 | 2/5 | forge/examples/carriers/phononics/thermal_rectifier.eml |
|
|
256
|
+
|
|
257
|
+
### `quantum/` — 7 modules / 23 fns / 14 verified
|
|
258
|
+
|
|
259
|
+
Quantum gates — Hadamard, Pauli, phase, CNOT, Grover oracle.
|
|
260
|
+
|
|
261
|
+
| File | Functions | Chain | Verified | Origin |
|
|
262
|
+
|------|-----------|-------|----------|--------|
|
|
263
|
+
| `cnot.eml` | cnot_control_zero_passes, cnot_self_inverse_amp, cnot_zero_certificate, … (+2) | 0 | 3/5 | forge/examples/carriers/quantum/cnot.eml |
|
|
264
|
+
| `grover_oracle.eml` | reflect, reflect_at_mean, squared_witness, fixed_point_value | 0 | 2/4 | forge/examples/carriers/quantum/grover_oracle.eml |
|
|
265
|
+
| `hadamard.eml` | h_norm_2x_squared_unnormalised, twice_input_norm, h0_norm_unnormalised, … (+2) | 0 | 3/5 | forge/examples/carriers/quantum/hadamard.eml |
|
|
266
|
+
| `pauli_x.eml` | pauli_x | 0 | 1/1 | monogate-research/industries/quantum/kernels/pauli_x.eml |
|
|
267
|
+
| `pauli_z.eml` | pauli_z | 0 | 1/1 | monogate-research/industries/quantum/kernels/pauli_z.eml |
|
|
268
|
+
| `phase_gate.eml` | r_real, r_imag, r_modulus_sq, … (+3) | 1 | 3/6 | forge/examples/carriers/quantum/phase_gate.eml |
|
|
269
|
+
| `rotation_rz.eml` | rx | 1 | 1/1 | monogate-research/industries/quantum/kernels/rotation.eml |
|
|
270
|
+
|
|
271
|
+
### `ml/` — 9 modules / 34 fns / 32 verified
|
|
272
|
+
|
|
273
|
+
Machine learning — activations, attention, RoPE, layernorm, loss.
|
|
274
|
+
|
|
275
|
+
| File | Functions | Chain | Verified | Origin |
|
|
276
|
+
|------|-----------|-------|----------|--------|
|
|
277
|
+
| `attention.eml` | scale_factor, score_qk, attention_step, … (+2) | 0,1 | 5/5 | **new** |
|
|
278
|
+
| `cross_entropy.eml` | bce_loss, bce_with_logits, categorical_ce_pair, … (+1) | 0,1,2 | 3/4 | forge/industries/ml/loss/cross_entropy.eml |
|
|
279
|
+
| `gelu.eml` | gelu_tanh, quick_gelu | 1 | 2/2 | forge/industries/ml/activations/gelu.eml |
|
|
280
|
+
| `layernorm.eml` | layernorm_step, layernorm_default, rmsnorm_step | 1 | 3/3 | **new** |
|
|
281
|
+
| `leaky_relu.eml` | leaky_relu, leaky_relu_default, prelu, leaky_relu_grad | 0 | 4/4 | **new** |
|
|
282
|
+
| `relu.eml` | relu, leaky_relu, relu6, prelu | 0 | 3/4 | forge/industries/ml/activations/relu.eml |
|
|
283
|
+
| `rotary_embed.eml` | theta, theta_default, rotate_pair_even, … (+2) | 1 | 5/5 | **new** |
|
|
284
|
+
| `silu.eml` | silu, swish, silu_grad | 1 | 3/3 | **new** |
|
|
285
|
+
| `softmax.eml` | softmax_shift_exp, softmax_normalize, softmax_two_logit, … (+1) | 0,1,2 | 4/4 | forge/industries/ml/activations/softmax.eml |
|
|
286
|
+
|
|
287
|
+
### `ballistics/` — 9 modules / 40 fns / 40 verified
|
|
288
|
+
|
|
289
|
+
Exterior ballistics — drag, gravity, wind, Coriolis, spin drift, air density, muzzle velocity, time of flight.
|
|
290
|
+
|
|
291
|
+
| File | Functions | Chain | Verified | Origin |
|
|
292
|
+
|------|-----------|-------|----------|--------|
|
|
293
|
+
| `air_density.eml` | density_isothermal, density_with_temperature, density_humid, … (+1) | 1 | 4/4 | **new** |
|
|
294
|
+
| `ballistic_solver.eml` | solve_tof, solve_drop, solve_wind_drift, … (+5) | 0,1 | 8/8 | **new** |
|
|
295
|
+
| `coriolis.eml` | horizontal_accel, vertical_accel, horizontal_drift, … (+1) | 1 | 4/4 | **new** |
|
|
296
|
+
| `drag.eml` | drag_force, drag_deceleration, drag_decel_from_bc | 0 | 3/3 | **new** |
|
|
297
|
+
| `gravity.eml` | drop, drop_at_zero, drop_earth, hold_up_mil | 0 | 4/4 | **new** |
|
|
298
|
+
| `muzzle_velocity.eml` | corrected_velocity, corrected_default, percent_change | 0 | 3/3 | **new** |
|
|
299
|
+
| `spin_drift.eml` | drift_inches_litz, drift_metres_litz, drift_metres_surrogate, … (+1) | 0,1 | 4/4 | **new** |
|
|
300
|
+
| `time_of_flight.eml` | tof_vacuum, tof_constant_decel, tof_pejsa, … (+2) | 0,1 | 5/5 | **new** |
|
|
301
|
+
| `wind.eml` | drift, relative_airspeed, perp_component, … (+2) | 0,1 | 5/5 | **new** |
|
|
302
|
+
|
|
303
|
+
### `gaming/noise/` — 9 modules / 25 fns / 18 verified
|
|
304
|
+
|
|
305
|
+
Procedural noise — Perlin (2D/3D), Simplex, Voronoi, Worley, value noise, FBM, turbulence.
|
|
306
|
+
|
|
307
|
+
| File | Functions | Chain | Verified | Origin |
|
|
308
|
+
|------|-----------|-------|----------|--------|
|
|
309
|
+
| `noise/fbm.eml` | fbm2, fbm2_default, fbm2_unit | 1 | 3/3 | **new** |
|
|
310
|
+
| `noise/perlin_2d.eml` | _grad_dot, perlin2, perlin2_unit | 1 | 2/3 | **new** |
|
|
311
|
+
| `noise/perlin_3d.eml` | _grad_dot3, perlin3 | 1 | 1/2 | **new** |
|
|
312
|
+
| `noise/simplex_2d.eml` | _grad_dot, simplex2, _contribution | 1 | 1/3 | **new** |
|
|
313
|
+
| `noise/turbulence.eml` | turbulence2, turbulence2_default | 1 | 2/2 | **new** |
|
|
314
|
+
| `noise/value_noise.eml` | value2, value2_signed | 1 | 2/2 | **new** |
|
|
315
|
+
| `noise/voronoi_2d.eml` | distance_to_nearest, _cell_distance, f2_minus_f1 | 1 | 2/3 | **new** |
|
|
316
|
+
| `noise/white_noise.eml` | hash2, hash3, hash2_at_origin | 0,1 | 3/3 | **new** |
|
|
317
|
+
| `noise/worley.eml` | squared_distance, _cell_sq_dist, manhattan_distance, … (+1) | 0 | 2/4 | **new** |
|
|
318
|
+
|
|
319
|
+
### `gaming/textures/` — 8 modules / 12 fns / 12 verified
|
|
320
|
+
|
|
321
|
+
Procedural textures — wood, marble, brick, checkerboard, rust, water surface, caustics, fire.
|
|
322
|
+
|
|
323
|
+
| File | Functions | Chain | Verified | Origin |
|
|
324
|
+
|------|-----------|-------|----------|--------|
|
|
325
|
+
| `textures/brick.eml` | pattern | 0 | 1/1 | **new** |
|
|
326
|
+
| `textures/caustics.eml` | intensity | 1 | 1/1 | **new** |
|
|
327
|
+
| `textures/checkerboard.eml` | checker, checker_tiled | 0 | 2/2 | **new** |
|
|
328
|
+
| `textures/fire.eml` | intensity | 1 | 1/1 | **new** |
|
|
329
|
+
| `textures/marble.eml` | marble | 1 | 1/1 | **new** |
|
|
330
|
+
| `textures/rust.eml` | mask | 1 | 1/1 | **new** |
|
|
331
|
+
| `textures/water_surface.eml` | height, height_default, normal_y | 1 | 3/3 | **new** |
|
|
332
|
+
| `textures/wood.eml` | grain, knot_mask | 1 | 2/2 | **new** |
|
|
333
|
+
|
|
334
|
+
### `gaming/shading/` — 6 modules / 18 fns / 18 verified
|
|
335
|
+
|
|
336
|
+
Shading models — Lambertian + half-Lambert, Cook-Torrance GGX/Smith, Schlick Fresnel, toon, matcap, Burley SSS.
|
|
337
|
+
|
|
338
|
+
| File | Functions | Chain | Verified | Origin |
|
|
339
|
+
|------|-----------|-------|----------|--------|
|
|
340
|
+
| `shading/fresnel.eml` | schlick, schlick_at_grazing, schlick_at_normal, f0_from_ior | 0 | 4/4 | **new** |
|
|
341
|
+
| `shading/matcap.eml` | uv_u, uv_v | 0 | 2/2 | **new** |
|
|
342
|
+
| `shading/pbr_diffuse.eml` | lambert, lambert_normalised, half_lambert | 0 | 3/3 | **new** |
|
|
343
|
+
| `shading/pbr_specular.eml` | d_ggx, v_smith, specular, roughness_to_alpha | 0,1 | 4/4 | **new** |
|
|
344
|
+
| `shading/subsurface.eml` | wrap, back_scatter, sss_total | 0,1 | 3/3 | **new** |
|
|
345
|
+
| `shading/toon.eml` | cel_diffuse, rim_light | 0,1 | 2/2 | **new** |
|
|
346
|
+
|
|
347
|
+
### `gaming/lighting/` — 6 modules / 12 fns / 12 verified
|
|
348
|
+
|
|
349
|
+
Lighting — point + spot + area, ambient occlusion, exponential and squared-exponential fog.
|
|
350
|
+
|
|
351
|
+
| File | Functions | Chain | Verified | Origin |
|
|
352
|
+
|------|-----------|-------|----------|--------|
|
|
353
|
+
| `lighting/ambient_occlusion.eml` | sample_contribution, ao_factor | 0 | 2/2 | **new** |
|
|
354
|
+
| `lighting/area_light.eml` | closest_on_sphere, solid_angle_fraction | 1 | 2/2 | **new** |
|
|
355
|
+
| `lighting/fog_exp.eml` | fog_factor, transmittance | 1 | 2/2 | **new** |
|
|
356
|
+
| `lighting/fog_exp2.eml` | fog_factor, transmittance | 1 | 2/2 | **new** |
|
|
357
|
+
| `lighting/point_light.eml` | attenuation, inverse_square | 0 | 2/2 | **new** |
|
|
358
|
+
| `lighting/spot_light.eml` | cone_attenuation, attenuation | 0 | 2/2 | **new** |
|
|
359
|
+
|
|
360
|
+
### `gaming/terrain/` — 5 modules / 12 fns / 12 verified
|
|
361
|
+
|
|
362
|
+
Terrain — FBM heightmaps, thermal + hydraulic erosion, biome classification, cliff detection.
|
|
363
|
+
|
|
364
|
+
| File | Functions | Chain | Verified | Origin |
|
|
365
|
+
|------|-----------|-------|----------|--------|
|
|
366
|
+
| `terrain/biome_select.eml` | biome_id | 0 | 1/1 | **new** |
|
|
367
|
+
| `terrain/cliff_detect.eml` | gradient_magnitude, is_cliff | 1 | 2/2 | **new** |
|
|
368
|
+
| `terrain/erosion_hydraulic.eml` | capacity, eroded_amount, deposited_amount, updated_water | 0 | 4/4 | **new** |
|
|
369
|
+
| `terrain/erosion_thermal.eml` | material_transfer, apply_self, apply_neighbour | 0 | 3/3 | **new** |
|
|
370
|
+
| `terrain/heightmap.eml` | height, ridged_height | 1 | 2/2 | **new** |
|
|
371
|
+
|
|
372
|
+
### `gaming/animation/` — 6 modules / 14 fns / 14 verified
|
|
373
|
+
|
|
374
|
+
Animation — quadratic + cubic ease-in/out, smoothstep + smootherstep, damped springs, bounce, 2-bone IK.
|
|
375
|
+
|
|
376
|
+
| File | Functions | Chain | Verified | Origin |
|
|
377
|
+
|------|-----------|-------|----------|--------|
|
|
378
|
+
| `animation/bounce.eml` | bounce_out, bounce_in | 0 | 2/2 | **new** |
|
|
379
|
+
| `animation/ease_in.eml` | ease_in_quad, ease_in_cubic | 0 | 2/2 | **new** |
|
|
380
|
+
| `animation/ease_in_out.eml` | smoothstep, smootherstep | 0 | 2/2 | **new** |
|
|
381
|
+
| `animation/ease_out.eml` | ease_out_quad, ease_out_cubic | 0 | 2/2 | **new** |
|
|
382
|
+
| `animation/ik_2bone.eml` | elbow_angle, shoulder_offset, reachable | 0,1 | 3/3 | **new** |
|
|
383
|
+
| `animation/spring.eml` | underdamped, critically_damped, time_constant | 0,1 | 3/3 | **new** |
|
|
384
|
+
|
|
385
|
+
### `gaming/particles/` — 5 modules / 11 fns / 11 verified
|
|
386
|
+
|
|
387
|
+
Particles — radial emitter, exponential drag, gravity, lifetime fade, size-over-life.
|
|
388
|
+
|
|
389
|
+
| File | Functions | Chain | Verified | Origin |
|
|
390
|
+
|------|-----------|-------|----------|--------|
|
|
391
|
+
| `particles/drag.eml` | velocity, distance_covered | 1 | 2/2 | **new** |
|
|
392
|
+
| `particles/emitter_radial.eml` | velocity_magnitude, disc_offset | 0 | 2/2 | **new** |
|
|
393
|
+
| `particles/fade.eml` | alpha, alpha_in_out | 0 | 2/2 | **new** |
|
|
394
|
+
| `particles/gravity_particle.eml` | position, velocity, position_earth | 0 | 3/3 | **new** |
|
|
395
|
+
| `particles/size_over_life.eml` | radius_linear, radius_power | 0,1 | 2/2 | **new** |
|
|
396
|
+
|
|
397
|
+
### `gaming/camera/` — 4 modules / 11 fns / 11 verified
|
|
398
|
+
|
|
399
|
+
Camera — perspective FOV matrix, orbit (spherical), damped-noise shake, depth-of-field circle of confusion.
|
|
400
|
+
|
|
401
|
+
| File | Functions | Chain | Verified | Origin |
|
|
402
|
+
|------|-----------|-------|----------|--------|
|
|
403
|
+
| `camera/dof_blur.eml` | circle_of_confusion, circle_of_confusion_clamped | 0 | 2/2 | **new** |
|
|
404
|
+
| `camera/fov_projection.eml` | m00, m11, m22, m23 | 0,2 | 4/4 | **new** |
|
|
405
|
+
| `camera/orbit.eml` | position_x, position_y, position_z, norm_witness | 1 | 4/4 | **new** |
|
|
406
|
+
| `camera/shake.eml` | shake1d | 1 | 1/1 | **new** |
|
|
407
|
+
|
|
408
|
+
### `gaming/audio/` — 4 modules / 10 fns / 10 verified
|
|
409
|
+
|
|
410
|
+
Audio — distance attenuation (linear/inverse/inverse-square), Doppler shift, feedback delay reverb, 1-pole low-pass.
|
|
411
|
+
|
|
412
|
+
| File | Functions | Chain | Verified | Origin |
|
|
413
|
+
|------|-----------|-------|----------|--------|
|
|
414
|
+
| `audio/distance_attenuation.eml` | inverse, inverse_square, linear | 0 | 3/3 | **new** |
|
|
415
|
+
| `audio/doppler.eml` | observed_frequency, observed_frequency_air | 0 | 2/2 | **new** |
|
|
416
|
+
| `audio/lowpass_audio.eml` | alpha_from_cutoff, step | 0 | 2/2 | **new** |
|
|
417
|
+
| `audio/reverb_delay.eml` | feedback_safe, delay_step, t60_seconds | 0,1 | 3/3 | **new** |
|
|
418
|
+
|
|
419
|
+
### `gaming/physics/` — 7 modules / 21 fns / 21 verified
|
|
420
|
+
|
|
421
|
+
Physics — semi-implicit Euler rigid-body 2D, AABB + circle collision, restitution-aware impulse resolve, Verlet, spring-damper, Archimedes buoyancy.
|
|
422
|
+
|
|
423
|
+
| File | Functions | Chain | Verified | Origin |
|
|
424
|
+
|------|-----------|-------|----------|--------|
|
|
425
|
+
| `physics/aabb_overlap.eml` | overlap_2d, penetration_depth_x | 0 | 2/2 | **new** |
|
|
426
|
+
| `physics/buoyancy.eml` | force, force_in_water, sphere_submerged_volume | 0 | 3/3 | **new** |
|
|
427
|
+
| `physics/circle_collision.eml` | collides, penetration_depth, inv_distance | 1 | 3/3 | **new** |
|
|
428
|
+
| `physics/impulse_resolve.eml` | impulse_magnitude, velocity_a_after, velocity_b_after | 0 | 3/3 | **new** |
|
|
429
|
+
| `physics/rigid_body_2d.eml` | integrate_vx, integrate_vy, integrate_omega, … (+3) | 0 | 6/6 | **new** |
|
|
430
|
+
| `physics/spring_damper.eml` | force, critical_damping | 0,1 | 2/2 | **new** |
|
|
431
|
+
| `physics/verlet.eml` | step, distance_constraint_correction | 0 | 2/2 | **new** |
|
|
432
|
+
|
|
433
|
+
## Vocabulary
|
|
434
|
+
|
|
435
|
+
**Chain order** — the Pfaffian chain order, an upper bound on how many
|
|
436
|
+
transcendental compositions deep a function reaches. Order 0 = pure
|
|
437
|
+
polynomial / rational. Order 1 = single transcendental wrapping a
|
|
438
|
+
polynomial argument (e.g. `exp`, `sin`, `ln`). Order 2 = two
|
|
439
|
+
transcendentals composed (e.g. `tanh = sinh/cosh`). Forge uses chain
|
|
440
|
+
order to bound termination, place transcendentals on FPGA / GPU, and
|
|
441
|
+
select the right Lean tactic.
|
|
442
|
+
|
|
443
|
+
**`@verify(lean, theorem = …)`** — the function carries a Lean proof
|
|
444
|
+
obligation. The Forge Lean backend emits the obligation; closing it
|
|
445
|
+
against MachLib is what makes the function *verified*.
|
|
446
|
+
|
|
447
|
+
**Origin: `new`** — written for this stdlib. Otherwise the column
|
|
448
|
+
shows the path under `~/monogate/` from which the module was copied
|
|
449
|
+
(originals stay where they are; the stdlib is the curated home).
|
|
450
|
+
|
|
451
|
+
## License
|
|
452
|
+
|
|
453
|
+
MIT — see `LICENSE`.
|