//! Genetic Programming (GP) subsystem.
//!
//! This module provides the core types and traits for tree-based Genetic
//! Programming:
//!
//! - [`GpNode`] — implement this on your primitive set enum
//! - [`Node<N>`] — recursive expression tree stored inside [`GpChromosome<N>`]
//! - [`GpChromosome<N>`] — library-provided concrete tree chromosome
//! - [`TreeChromosome`] — supertrait of `ChromosomeT` for tree chromosomes
//! - [`GpConfiguration`] — engine parameter shell (extended in Wave 2)
//! - [`MathNode`] / [`BoolNode`] — built-in primitive sets
//! - [`GpCrossover`] — tree subtree crossover operator (Wave 1)
//! - [`GpMutation`] — tree mutation operators: SubtreeMutation, PointMutation,
//! HoistMutation (Wave 1)
//! - [`ramped_half_and_half`] — population initializer (Wave 2)
//! - [`GpGa`] / [`GpResult`] — full GP engine (Wave 2)
pub use ;
pub use GpConfiguration;
pub use GpCrossover;
pub use ;
pub use ramped_half_and_half;
pub use GpMutation;
pub use ;
pub use ;