inductive
definition
Structure
show as:
view math explainer →
open explainer
Read the cached plain-language explainer.
open lean source
IndisputableMonolith.Chemistry.CrystalStructure on GitHub at line 41.
browse module
All declarations in this module, on Recognition.
explainer page
depends on
used by
-
windowSums_shift_equivariant -
PhiInt -
J_bit -
coordination -
eightTickCoherence -
energyScale -
hcp_ratio_near_phi -
packingEfficiency -
packingEfficiencyApprox -
stabilityScore -
ferromagnet_positive_J -
predictedI1_eV -
shell_sum_to_noble -
no_sublinear_universal_decoder -
consistent_completeStateFrom -
alphaInv_seed_ratio -
logarithmic_derivative_constant -
total_angular_is_pi5 -
ell0_ne_zero -
G_SI_uncertainty -
display_null_condition -
dark_energy_dominates -
dmEvidence -
dm_is_dominant -
dm_self_interaction_small -
sigma8_match -
eight_tick_cmin_numerical -
deficit_bounded -
isHealingFalsified -
G_ℏ_product -
consistency_forces_RCL_form_is_theorem -
no_alternative_321 -
bridge_T5_T6 -
IsMinimalRecurrence -
all_gates -
gate_discreteness -
reciprocity -
entry_cost_zero_iff_unity -
coupling_quadratic -
gauge_generators_eq_edges
formal source
38open Constants
39
40/-- Crystal structure types. -/
41inductive Structure
42| BCC -- Body-centered cubic
43| FCC -- Face-centered cubic
44| HCP -- Hexagonal close-packed
45deriving Repr, DecidableEq
46
47/-- Coordination number for each structure. -/
48def coordination : Structure → ℕ
49| .BCC => 8
50| .FCC => 12
51| .HCP => 12
52
53/-- Packing efficiency (fraction of space filled by spheres). -/
54def packingEfficiency : Structure → ℝ
55| .BCC => Real.pi * Real.sqrt 3 / 8 -- ≈ 0.68
56| .FCC => Real.pi / (3 * Real.sqrt 2) -- ≈ 0.74
57| .HCP => Real.pi / (3 * Real.sqrt 2) -- ≈ 0.74
58
59/-- Approximate packing efficiency values. -/
60def packingEfficiencyApprox : Structure → ℝ
61| .BCC => 0.68
62| .FCC => 0.74
63| .HCP => 0.74
64
65/-- BCC coordination equals 8-tick. -/
66theorem bcc_is_8_tick : coordination .BCC = 8 := rfl
67
68/-- FCC and HCP have coordination 12. -/
69theorem close_packed_coordination : coordination .FCC = 12 ∧ coordination .HCP = 12 := by
70 constructor <;> rfl
71