Expand description
Buckingham-π dimensional reduction (a discovery prior for phop).
In the pure EML grammar every internal node is exp(x) − ln(y), so every argument to a
node must be dimensionless. An in-loss dimensional penalty on single-variable leaves would
therefore be degenerate (it could only forbid using a dimensioned variable at all). The
productive, EML-appropriate way to bring dimensional analysis into the search — the same way
AI-Feynman uses it — is as a preprocessing reduction: combine the dimensioned inputs into
the maximal set of independent dimensionless groups (the Buckingham-π theorem) and let phop
discover a law over those. The number of groups is n_features − rank(D), where D is the
dimension matrix.
Each feature carries a Dimension — integer exponents over the seven SI base units
[s, m, kg, A, K, mol, cd]. pi_groups returns an integer basis of the nullspace of D
(each basis vector e gives a dimensionless monomial ∏ xᵢ^{eᵢ}); DataSet::to_dimensionless
materializes those monomials as the new feature columns.
Constants§
- DIMENSIONLESS
- The dimensionless dimension (all exponents zero).
- LENGTH
- Length
[m]. - MASS
- Mass
[kg]. - TIME
- Time
[s].
Functions§
- pi_
groups - Integer basis of the nullspace of the dimension matrix of
dims.
Type Aliases§
- Dimension
- Integer exponents over the seven SI base units
[s, m, kg, A, K, mol, cd].