Reference · The Applied Higher-Order Functions catalogue
rainbow.algorithms.proofs.ahof.projection-methods
Kochenderfer constrained/rounded update rules as higher-order-function compositions, proved axiom-free, extending the 222 AHoF catalog: O10.1 projected gradient descent : project the updated point onto a box [lo,hi] D12.3 restricted policy gradient : clip the update to a trust region [lo,hi] O22.2 LP-relaxation-and-round : round a fractional LP value by a 1/2 threshold Both projection/clipping rules are clamp compositions; the feasibility guarantees (result lies in [lo,hi]) reuse rainbow.math.logic.clamp-range (clamp-at-most-hi, lo-at-most-clamp). Rounding uses the decidable order + if-data. Native and axiom-free; chains clamp-range (-> nnrat-minmax) on d63.
opt/projected-gradient-step
opt/projected-gradient-step : (x₁ x₂ x₃ : ℚ≥0) → ℚ≥0
ℚ≥0 = nnrat/NonnegativeRational
policy/restricted-gradient-step
policy/restricted-gradient-step : (x₁ x₂ x₃ : ℚ≥0) → ℚ≥0
ℚ≥0 = nnrat/NonnegativeRational
opt/lp-round
opt/lp-round : (x₁ : ℚ≥0) → ℚ≥0
ℚ≥0 = nnrat/NonnegativeRational
opt/projected-below-hi
opt/projected-below-hi : (x lo hi : ℚ≥0) → opt/projected-gradient-step x lo hi ≤ hi
ℚ≥0 = nnrat/NonnegativeRational≤ = nnrat/at-most
opt/projected-above-lo
opt/projected-above-lo : (x lo hi : ℚ≥0) (ordered : lo ≤ hi) → lo ≤ opt/projected-gradient-step x lo hi
ℚ≥0 = nnrat/NonnegativeRational≤ = nnrat/at-most
policy/restricted-within-trust-hi
policy/restricted-within-trust-hi : (raw lo hi : ℚ≥0) → opt/projected-gradient-step raw lo hi ≤ hi
ℚ≥0 = nnrat/NonnegativeRational≤ = nnrat/at-most
policy/restricted-within-trust-lo
policy/restricted-within-trust-lo : (raw lo hi : ℚ≥0) (ordered : lo ≤ hi) → lo ≤ opt/projected-gradient-step raw lo hi
ℚ≥0 = nnrat/NonnegativeRational≤ = nnrat/at-most
opt/lp-round-up-example
opt/lp-round-up-example : → opt/lp-round 3/4 = 1
1 = nnrat/one= = equality/Eq
opt/lp-round-down-example
opt/lp-round-down-example : → opt/lp-round 1/4 = 0
0 = nnrat/zero= = equality/Eq