boofun.core.numba_optimizations

Numba JIT optimizations for Boolean function operations.

This module provides JIT-compiled versions of critical operations for significant performance improvements in compute-intensive scenarios.

Functions

fallback_fourier_batch(inputs, coefficients)

Fallback Fourier batch evaluation.

fallback_influences(truth_table, n_vars)

Fallback influence computation.

fallback_truth_table_batch(inputs, truth_table)

Fallback truth table batch evaluation.

get_numba_stats()

Get Numba optimization statistics.

is_numba_available()

Check if Numba optimization is available.

numba_optimize(operation, *args, **kwargs)

Apply Numba optimization to an operation.

Classes

NumbaOptimizer()

Manager for Numba JIT optimizations.

class boofun.core.numba_optimizations.NumbaOptimizer[source]

Manager for Numba JIT optimizations.

Provides optimized versions of critical Boolean function operations with automatic fallback to pure Python/NumPy implementations.

__init__()[source]

Initialize Numba optimizer.

is_available() bool[source]

Check if Numba optimization is available.

optimize_truth_table_batch(inputs: ndarray, truth_table: ndarray) ndarray[source]

Optimized batch truth table evaluation.

optimize_fourier_batch(inputs: ndarray, coefficients: ndarray) ndarray[source]

Optimized batch Fourier evaluation.

optimize_influences(truth_table: ndarray, n_vars: int) ndarray[source]

Optimized influence computation.

optimize_noise_stability(fourier_coeffs: ndarray, rho: float) float[source]

Optimized noise stability computation.

optimize_walsh_hadamard(values: ndarray) ndarray[source]

Optimized Walsh-Hadamard transform.

optimize_anf_batch(inputs: ndarray, anf_data: Dict) ndarray[source]

Optimized batch ANF evaluation.

get_optimization_stats() Dict[str, Any][source]

Get optimization statistics.

boofun.core.numba_optimizations.is_numba_available() bool[source]

Check if Numba optimization is available.

boofun.core.numba_optimizations.numba_optimize(operation: str, *args, **kwargs) Any[source]

Apply Numba optimization to an operation.

Parameters:
  • operation – Operation name

  • *args – Operation arguments

  • **kwargs

    Operation arguments

Returns:

Optimized operation result

boofun.core.numba_optimizations.get_numba_stats() Dict[str, Any][source]

Get Numba optimization statistics.

boofun.core.numba_optimizations.fallback_truth_table_batch(inputs: ndarray, truth_table: ndarray) ndarray[source]

Fallback truth table batch evaluation.

boofun.core.numba_optimizations.fallback_fourier_batch(inputs: ndarray, coefficients: ndarray) ndarray[source]

Fallback Fourier batch evaluation.

boofun.core.numba_optimizations.fallback_influences(truth_table: ndarray, n_vars: int) ndarray[source]

Fallback influence computation.