Encyclopedia Materials Materials Porosity Permeability From Jcost
ARTICLE 2 claims 1 theorem 1 measured
Materials Porosity Permeability From Jcost
A classical law links how much empty space a material has to how easily fluid flows through it; a machine-checked library proves only the scaffolding around that link, not the link itself.
Porosity and permeability
Porosity is the fraction of a material's volume that is empty space, and permeability is a measure of how easily a fluid can pass through that space. The Kozeny-Carman equation, a standard result in materials science, relates the two: permeability is proportional to the cube of porosity divided by the square of one minus porosity, and inversely proportional to the square of the specific surface area. The equation captures a familiar trade-off: a material with more void space tends to let fluids through more easily, but a material with finer internal structure resists flow more.
The Kozeny-Carman relation was developed in the early twentieth century, with Josef Kozeny's 1927 derivation and Philip Carman's later refinements. It remains a workhorse for estimating permeability in packed beds, soils, and porous media. The equation is empirical in origin, fitted to observations of flow through granular materials, and it works best for simple, uniform geometries. Real materials, with irregular pores and tortuous paths, often require correction factors.
In Recognition Science, the framework models the same trade-off through its cost function, a measure of the forced expense of recognition events. The framework's library, a machine-checked collection of formal theorems, defines a domain cost as the cost function applied to the ratio of two quantities, m over e. For porosity and permeability, the intention is that m and e represent material properties, and their ratio enters the cost function.
What the library actually proves is more modest. It proves three general facts about this domain cost: it is zero when the two quantities are equal, it is never negative for positive inputs, and a certain threshold constant, phi minus 3/2, is positive. The library also packages these three facts into a certificate structure, showing that such a certificate exists. These are properties of the cost function itself, not of any particular material.
The module does not prove the Kozeny-Carman equation, nor does it derive a specific permeability law. The docstring notes an intended direction: that maximum permeability per unit surface area occurs at a porosity near 0.118. But the formal definitions do not connect m and e to porosity or surface area. The research note is explicit: this is where the idea was meant to go, not a result. What would make this a theorem about permeability is a definition of m and e in the material's own terms, which the module does not provide.
MEASURED domainCost · IndisputableMonolith/Materials/PorosityPermeabilityFromJCost.lean
def domainCost (m e : ℝ) : ℝ := Jcost (m / e)
THEOREM domainCost_at_eq · domainCost_nonneg · canonicalThreshold_pos · IndisputableMonolith/Materials/PorosityPermeabilityFromJCost.lean
theorem domainCost_at_eq (r : ℝ) (h : r ≠ 0) : domainCost r r = 0 := by
unfold domainCost; rw [div_self h]; exact Jcost_unit0
theorem domainCost_nonneg (m e : ℝ) (hm : 0 < m) (he : 0 < e) : 0 ≤ domainCost m e := by
unfold domainCost; exact Jcost_nonneg (div_pos hm he)
theorem canonicalThreshold_pos : 0 < canonicalThreshold := by
unfold canonicalThreshold; linarith [phi_gt_onePointFive]
What this page does not claim
The module does not prove the Kozeny-Carman equation or any specific permeability law. The framework does not derive the value 0.118 as a theorem; it is a research note, not a proved result. The three proved facts about the domain cost are general properties of the cost function, not statements about any particular material.
Verify this page
Every tagged claim above names its theorem. To check one yourself rather than trust this page, elaborate the source module with Lean 4 and audit its axiom basis:
$ lake env lean IndisputableMonolith/Materials/PorosityPermeabilityFromJCost.lean
expected axiom basis: [propext, Classical.choice, Quot.sound] (the Lean kernel's standard three; no RS-specific axioms)
A page whose claims cannot be reproduced this way does not ship. In production, every anchor links to the exact declaration in the public source release, and this block carries the build receipt for the page itself.
Derived articles
This page is generated by a question-recursion engine: the questions its answers raise become the next pages. The current agenda, with open targets marked red:
- What definition of m and e in terms of porosity and surface area would make the domain cost a theorem about permeability?
- Does the framework's cost function recover the Kozeny-Carman porosity exponent of three from a more basic principle?
- What empirical data would test the framework's predicted optimal porosity near 0.118 against the Kozeny-Carman optimum?
- Can the certificate structure be instantiated with material-specific definitions to produce a genuine permeability law?
MACHINE LAYER · GROUNDED CLAIM TABLE · CLICK TO EXPAND
MEASURED domainCost · IndisputableMonolith/Materials/PorosityPermeabilityFromJCost.lean
def domainCost (m e : ℝ) : ℝ := Jcost (m / e)The Kozeny-Carman equation, a standard result in materials science, relates the two: permeability is proportional to the cube of porosity divided by the square of one minus porosity, and inversely proportional to the square of the specific surface area. domainCost · IndisputableMonolith/Materials/PorosityPermeabilityFromJCost.leanTHEOREM domainCost_at_eq · domainCost_nonneg · canonicalThreshold_pos · IndisputableMonolith/Materials/PorosityPermeabilityFromJCost.lean
theorem domainCost_at_eq (r : ℝ) (h : r ≠ 0) : domainCost r r = 0 := by unfold domainCost; rw [div_self h]; exact Jcost_unit0theorem domainCost_nonneg (m e : ℝ) (hm : 0 < m) (he : 0 < e) : 0 ≤ domainCost m e := by unfold domainCost; exact Jcost_nonneg (div_pos hm he)theorem canonicalThreshold_pos : 0 < canonicalThreshold := by unfold canonicalThreshold; linarith [phi_gt_onePointFive]The library actually proves three general facts about this domain cost: it is zero when the two quantities are equal, it is never negative for positive inputs, and a certain threshold constant, phi minus 3/2, is positive. domainCost_at_eq · domainCost_nonneg · canonicalThreshold_pos · IndisputableMonolith/Materials/PorosityPermeabilityFromJCost.lean