AutoSamplingTheory.SALD.forwardKlDerivativeSideConditionContract
Data definition / provenance and workflow record
Meaning and type
The result has data type AutoSamplingTheory.SALD.ForwardKlDerivativeSideConditionContract. A value of this type stores descriptions; it is not a proof of the statements in those descriptions.
Lean statement of this data definition
The part after the colon is the output data type. This declaration takes no mathematical proof inputs.
def forwardKlDerivativeSideConditionContract : ForwardKlDerivativeSideConditionContractConstruction and field-by-field explanation
Construct a data record from explicit fields and the audited defaults shown below.
This Lean definition constructs provenance or workflow data. It does not prove the mathematical statements stored as text. Status labels, named dependencies and citations are data, not compilation, proof or source certificates.
sourceBlock:AutoSamplingTheory.SourceAnchor(explicit)Nested provenance data.
AutoSamplingTheory.SALD.saldForwardKlDerivativeSource— audited data reference, not expanded and not a compiled dependency edgedensityPath:String(explicit)Descriptive text even when field names say formula, theorem, inequality, derivative, source gap, or proof.
rho_s and tilde_pi_s=pi_{t(s)} are smooth positive densities on a common state space, with rho_s absolutely continuous with respect to tilde_pi_s.massConservation:String(explicit)Descriptive text even when field names say formula, theorem, inequality, derivative, source gap, or proof.
appendix.tex:168-174 uses int partial_s rho_s dx = 0 when differentiating KL(rho_s || tilde_pi_s).derivativeUnderIntegral:String(explicit)Descriptive text even when field names say formula, theorem, inequality, derivative, source gap, or proof.
The map s -> int log(rho_s/tilde_pi_s) rho_s dx is differentiable, and the derivative may pass through the integral.saldIntegrationByParts:String(explicit)Descriptive text even when field names say formula, theorem, inequality, derivative, source gap, or proof.
appendix.tex:176-185 integrates div(rho_s nabla log(rho_s/tilde_pi_s)) against log(rho_s/tilde_pi_s) with no boundary contribution.targetIntegrationByParts:String(explicit)Descriptive text even when field names say formula, theorem, inequality, derivative, source gap, or proof.
appendix.tex:199-208 integrates div(tilde_v_s tilde_pi_s) against rho_s/tilde_pi_s with no boundary contribution, then applies Cauchy--Schwarz and Young.l2CauchyYoungStep:String(explicit)Descriptive text even when field names say formula, theorem, inequality, derivative, source gap, or proof.
sqrt(FI(rho_s||tilde_pi_s))*||tilde_v_s||_{L2(rho_s)} <= (1/2)*FI(rho_s||tilde_pi_s)+(1/2)*||tilde_v_s||_{L2(rho_s)}^2.inverseSchedule:String(explicit)Descriptive text even when field names say formula, theorem, inequality, derivative, source gap, or proof.
t=t(s) is smooth monotone with inverse s=s(t), dot{s}(t)>0, and dot{t}(s(t))=dot{s}(t)^(-1).timeChangeIdentity:String(explicit)Descriptive text even when field names say formula, theorem, inequality, derivative, source gap, or proof.
appendix.tex:218-228 uses d/dt K(s(t)) = dot{s}(t)*dK/ds and dot{s}(t)*dot{t}(s(t))^2 = dot{s}(t)^(-1).outputInequality:String(explicit)Descriptive text even when field names say formula, theorem, inequality, derivative, source gap, or proof.
dK/dt <= -dot{s}(t)*C_LSI(t)*K(t) + (1/2)*dot{s}(t)^(-1)*||v_t||_{L2(rho_{s(t)})}^2.obligations:List String(explicit)Ordered descriptive/naming checklist, not logical conjunction or compiler dependency list.
Ordered data items
- sald.forward_kl.density_boundary_regular
- sald.forward_kl.schedule_time_change
sourceGaps:List String(explicit)Ordered descriptive/naming checklist, not logical conjunction or compiler dependency list.
Ordered data items
- the source proof invokes differentiating under the integral and integration by parts without spelling out domination or boundary decay hypotheses
- the source theorem names the inverse slowdown s=s(t), but not the inverse-function derivative identities needed by the time-change calculation
status:AutoSamplingTheory.ProofStatus(explicit)Stored workflow tag; honor the exact default but do not infer mathematical certification.
AutoSamplingTheory.ProofStatus.obligation— stored label only; no proof certification
Exact Lean data construction
Each field assignment stores the corresponding value shown above. Omitted fields use the explicitly identified schema defaults. Strings that name theorems remain strings; they do not call those theorems.
def forwardKlDerivativeSideConditionContract : ForwardKlDerivativeSideConditionContract where
sourceBlock := saldForwardKlDerivativeSource
densityPath := "rho_s and tilde_pi_s=pi_{t(s)} are smooth positive densities on a common state space, with rho_s absolutely continuous with respect to tilde_pi_s."
massConservation := "appendix.tex:168-174 uses int partial_s rho_s dx = 0 when differentiating KL(rho_s || tilde_pi_s)."
derivativeUnderIntegral := "The map s -> int log(rho_s/tilde_pi_s) rho_s dx is differentiable, and the derivative may pass through the integral."
saldIntegrationByParts := "appendix.tex:176-185 integrates div(rho_s nabla log(rho_s/tilde_pi_s)) against log(rho_s/tilde_pi_s) with no boundary contribution."
targetIntegrationByParts := "appendix.tex:199-208 integrates div(tilde_v_s tilde_pi_s) against rho_s/tilde_pi_s with no boundary contribution, then applies Cauchy--Schwarz and Young."
l2CauchyYoungStep := "sqrt(FI(rho_s||tilde_pi_s))*||tilde_v_s||_{L2(rho_s)} <= (1/2)*FI(rho_s||tilde_pi_s)+(1/2)*||tilde_v_s||_{L2(rho_s)}^2."
inverseSchedule := "t=t(s) is smooth monotone with inverse s=s(t), dot{s}(t)>0, and dot{t}(s(t))=dot{s}(t)^(-1)."
timeChangeIdentity := "appendix.tex:218-228 uses d/dt K(s(t)) = dot{s}(t)*dK/ds and dot{s}(t)*dot{t}(s(t))^2 = dot{s}(t)^(-1)."
outputInequality := "dK/dt <= -dot{s}(t)*C_LSI(t)*K(t) + (1/2)*dot{s}(t)^(-1)*||v_t||_{L2(rho_{s(t)})}^2."
obligations := [
"sald.forward_kl.density_boundary_regular",
"sald.forward_kl.schedule_time_change"
]
sourceGaps := [
"the source proof invokes differentiating under the integral and integration by parts without spelling out domination or boundary decay hypotheses",
"the source theorem names the inverse slowdown s=s(t), but not the inverse-function derivative identities needed by the time-change calculation"
]
status := ProofStatus.obligationExisting module entry · Audited data-reader index · All teaching coverage