Stdlib module math.vitl

This page is a wiki-style reference for one concrete stdlib file. It explains what the file owns, where it fits in the family, and how to decide whether this is the right surface to depend on.

Visual portrait of math.vitl
Wiki-style portrait for math.vitl.

Family: math

Kind: public stdlib surface

Page style: this reference follows the same “encyclopedic card + portrait + usage contract” logic as the keyword pages, but for stdlib modules.

Summary

Overview

FieldValue
Pathmath.vitl
Familymath
Kindpublic stdlib surface
Line count1213
Declared procedures283
Declared forms/picks12

`math.vitl` is a public stdlib surface inside the `math` family. It should be read as one focused slice of the broader family responsibility: Arithmetic, algebra, comparison, calculus, geometry, modular arithmetic, number theory, probability, statistics, matrix, and vector helpers.

Purpose

This file should be chosen because of responsibility, not because its name “sounds close enough”. Inside the math family, it carries one focused part of the contract and keeps that responsibility separate from neighboring concerns.

  • A scoring engine can compute aggregates in `math` while keeping I/O and transport elsewhere.
  • A statistics or matrix chapter should explain the workflow around the computation, not just a single formula.

Taxonomy

Think of this page as a generated encyclopedia entry rather than a hand-written tutorial. The goal is to show what kind of module this is, how dense it is, and what reading strategy makes sense before depending on it.

  • Large algorithm surface: this file exposes many procedures and likely acts as a domain toolkit rather than a single thin wrapper.
  • Owns domain vocabulary: the module declares data shapes in addition to executable helpers, so its types are part of the contract.
  • Has tuning constants: part of the module behavior is controlled by named constants that document default precision, limits, or policy.
  • Minimal top-level dependencies: the module reads as mostly self-contained from its opening declarations.

Implementation profile

This profile is inferred directly from the source text. It does not replace reading the file, but it tells you quickly whether the module is mostly declarative, loop-heavy, branch-heavy, or organized around many small exits.

SignalCountWhat it suggests
if0Branching density and local decision-making.
while0Loop-heavy or iterative implementation style.
for0Collection-style traversal at source level.
match0Variant-driven branching or grammar-style decoding.
let0Local state and intermediate value density.
give283Number of explicit exit points and result shaping.

Top-level API inventory

SurfaceItems
Proceduresmath_error_code, math_version, math_name, math_module_count, math_modules, math_manifest, add, sub, mul, div_trunc, rem, abs
FormsRatio, IntRange, IntStats, Point2i, Size2i, Rect2i, Vec2i, Vec3i, MathManifest, MathHealth, MathSummary
PicksMathError
ConstantsPI, E, TAU, HALF_PI, QUARTER_PI, DEG_TO_RAD, RAD_TO_DEG, I32_MIN, I32_MAX, BYTE_BITS, WORD_BITS, DEFAULT_SCALE
Exportsnone declared at top level

Imported surfaces

This file does not advertise a top-level `use` surface in its opening declarations. That often means it is either self-contained or an aggregation layer.

Position in family

This file is module 1 of 21 in the math family when ordered by path. By procedure count it ranks 1, and by line count it ranks 1. Those ranks are useful as rough signals of breadth, not as quality judgments.

Declaration map

The declaration map turns raw source into a scan-friendly catalog. It is useful when the file is large enough that a reader wants to orient by kinds of surfaces first.

LineNameKindRole
1vitte/stdlib_checked/mathspaceDeclares the namespace that anchors this file in the stdlib tree.
9PIconstDefines a named constant reused across the module.
11EconstDefines a named constant reused across the module.
13TAUconstDefines a named constant reused across the module.
15HALF_PIconstDefines a named constant reused across the module.
17QUARTER_PIconstDefines a named constant reused across the module.
19DEG_TO_RADconstDefines a named constant reused across the module.
21RAD_TO_DEGconstDefines a named constant reused across the module.
23I32_MINconstDefines a bound or precision constant that shapes runtime behavior.
25I32_MAXconstDefines a bound or precision constant that shapes runtime behavior.
27BYTE_BITSconstDefines a named constant reused across the module.
29WORD_BITSconstDefines a named constant reused across the module.
31DEFAULT_SCALEconstDefines a named constant reused across the module.
33PERCENT_SCALEconstDefines a named constant reused across the module.
35RatioformIntroduces a structured data shape that other procedures can exchange.
39IntRangeformIntroduces a structured data shape that other procedures can exchange.
43IntStatsformIntroduces a structured data shape that other procedures can exchange.
47Point2iformIntroduces a structured data shape that other procedures can exchange.
51Size2iformIntroduces a structured data shape that other procedures can exchange.
55Rect2iformIntroduces a structured data shape that other procedures can exchange.
59Vec2iformIntroduces a structured data shape that other procedures can exchange.
63Vec3iformIntroduces a structured data shape that other procedures can exchange.
67MathManifestformIntroduces a structured data shape that other procedures can exchange.
71MathHealthformIntroduces a structured data shape that other procedures can exchange.
75MathSummaryformIntroduces a structured data shape that other procedures can exchange.
79MathErrorpickIntroduces a tagged variant type used to model distinct outcomes.
83math_error_codeprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
87math_versionprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
91math_nameprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
95math_module_countprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
99math_modulesprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
103math_manifestprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
107addprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
111subprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
115mulprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
119div_truncprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
123remprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
127absprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
131minprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
135maxprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
139clampprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
143signprocImplements a security-sensitive transformation in the crypto boundary.
147betweenprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
151compareprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
155negprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
159incprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
163decprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
167squareprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
171cubeprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
175avg2procRepresents one top-level surface in the file contract and should be read as part of the module boundary.
179midpointprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
183safe_divprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
187safe_remprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
191saturating_addprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
195saturating_subprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
199saturating_mulprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
203checked_add_validprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
207checked_mul_validprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
211gcdprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
215lcmprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
219gcd_manyprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
223lcm_manyprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
227is_evenprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
231is_oddprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
235is_primeprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
239is_compositeprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
243next_primeprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
247prev_primeprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
251prime_factorsprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
255divisorsprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
259totientprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
263coprimeprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
267pow_intprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
271pow2procRepresents one top-level surface in the file contract and should be read as part of the module boundary.
275pow10procRepresents one top-level surface in the file contract and should be read as part of the module boundary.
279factorialprocImplements a counting or probability helper inside the math boundary.
283triangularprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
287fibonacciprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
291binomialprocImplements a counting or probability helper inside the math boundary.
295falling_factorialprocImplements a counting or probability helper inside the math boundary.
299rising_factorialprocImplements a counting or probability helper inside the math boundary.
303double_factorialprocImplements a counting or probability helper inside the math boundary.
307sqrt_floorprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
311sqrt_ceilprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
315cube_root_floorprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
319cube_root_ceilprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
323is_squareprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
327is_cubeprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
331ilog2_floorprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
335ilog10_floorprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
339ceil_divprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
343floor_divprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
347floor_modprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
351div_round_nearestprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
355mod_normalizeprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
359mod_addprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
363mod_subprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
367mod_mulprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
371mod_powprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
375mod_negprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
379mod_inverseprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
383mod_divprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
387is_pow2procRepresents one top-level surface in the file contract and should be read as part of the module boundary.
391prev_pow2procRepresents one top-level surface in the file contract and should be read as part of the module boundary.
395next_pow2procRepresents one top-level surface in the file contract and should be read as part of the module boundary.
399has_single_bitprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
403bit_floorprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
407bit_ceilprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
411bit_widthprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
415bit_countprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
419lowbitprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
423lowbit_pow2procRepresents one top-level surface in the file contract and should be read as part of the module boundary.
427parityprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
431is_bit_setprocOwns a concrete data shape or the operations that maintain it.
435set_bitprocOwns a concrete data shape or the operations that maintain it.
439clear_bitprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
443toggle_bitprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
447align_downprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
451align_upprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
455round_toprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
459floor_toprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
463round_down_pow2procRepresents one top-level surface in the file contract and should be read as part of the module boundary.
467round_up_pow2procRepresents one top-level surface in the file contract and should be read as part of the module boundary.
471clamp_zeroprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
475clamp_nonzeroprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
479clamp_percentprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
483lerp_intprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
487inv_lerp_intprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
491remap_intprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
495smoothstep_scaledprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
499ratio_newprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
503ratio_addprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
507ratio_subprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
511ratio_mulprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
515ratio_divprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
519ratio_to_scaledprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
523ratio_percentprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
527rect_areaprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
531rect_perimeterprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
535triangle_area2procRepresents one top-level surface in the file contract and should be read as part of the module boundary.
539distance_sqprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
543manhattan_distanceprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
547pointprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
551size2procRepresents one top-level surface in the file contract and should be read as part of the module boundary.
555rectprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
559vec2iprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
563vec3iprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
567point_distance_sqprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
571point_manhattanprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
575rect_rightprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
579rect_bottomprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
583rect_contains_pointprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
587rect_intersectsprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
591vecprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
595vec_addprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
599vec_subprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
603vec_scaleprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
607vec_dotprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
611vec_norm_sqprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
615vec2i_addprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
619vec2i_subprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
623vec2i_scaleprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
627vec2i_dotprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
631vec2i_crossprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
635vec2i_norm_sqprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
639vec3i_addprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
643vec3i_subprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
647vec3i_scaleprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
651vec3i_dotprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
655vec3i_crossprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
659vec3i_norm_sqprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
663cxprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
667cx_addprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
671cx_subprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
675cx_mulprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
679cx_conjprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
683cx_abs_sqprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
687matprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
691mat_idprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
695mat_addprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
699mat_subprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
703mat_mulprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
707mat_traceprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
711mat_detprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
715arr_lenprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
719arr_is_emptyprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
723arr_firstprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
727arr_lastprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
731arr_containsprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
735arr_index_ofprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
739arr_countprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
743arr_last_index_ofprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
747arr_copyprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
751arr_appendprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
755arr_prependprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
759arr_concatprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
763arr_pushprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
767arr_setprocOwns a concrete data shape or the operations that maintain it.
771arr_swapprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
775arr_clearprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
779arr_popprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
783arr_pop_atprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
787arr_insertprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
791arr_remove_atprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
795arr_repeatprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
799arr_fillprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
803arr_reverseprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
807arr_sumprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
811arr_minprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
815arr_maxprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
819arr_meanprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
823arr_mean_scaledprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
827arr_rangeprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
831arr_sum_absprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
835arr_productprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
839arr_anyprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
843arr_allprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
847arr_count_nonzeroprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
851arr_prefix_sumprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
855arr_prefix_minprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
859arr_prefix_maxprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
863arr_takeprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
867arr_dropprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
871arr_headprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
875arr_tailprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
879arr_sliceprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
883arr_rotate_leftprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
887arr_rotate_rightprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
891arr_replace_sliceprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
895arr_spliceprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
899arr_rotateprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
903arr_enumerateprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
907arr_zipprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
911arr_chunksprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
915arr_clamp_eachprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
919arr_getprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
923arr_statsprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
927arr_sort_simpleprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
931arr_median_floorprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
935arr_variance_scaledprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
939arr_stddev_floorprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
943permutationsprocImplements a counting or probability helper inside the math boundary.
947combinationsprocImplements a counting or probability helper inside the math boundary.
951probability_percentprocImplements a counting or probability helper inside the math boundary.
955odds_ratioprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
959pairingsprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
963percentprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
967percent_scaledprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
971arithmetic_termprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
975arithmetic_sumprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
979geometric_termprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
983triangular_termprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
987fibonacci_termprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
991finite_differenceprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
995slope_betweenprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
999derivative_at_intprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
1003normalize_degreesprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
1007opposite_angleprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
1011complement_angleprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
1015supplement_angleprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
1019quadrantprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
1023is_right_angleprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
1027is_straight_angleprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
1031degrees_to_radiansprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
1035radians_to_degreesprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
1039sinprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
1043cosprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
1047tanprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
1051asinprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
1055acosprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
1059atanprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
1063atan2procRepresents one top-level surface in the file contract and should be read as part of the module boundary.
1067sinhprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
1071coshprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
1075tanhprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
1079asinhprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
1083acoshprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
1087atanhprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
1091expprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
1095logprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
1099log10procRepresents one top-level surface in the file contract and should be read as part of the module boundary.
1103powprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
1107sqrtprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
1111fabsprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
1115fmodprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
1119ceilprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
1123floorprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
1127round_f64procRepresents one top-level surface in the file contract and should be read as part of the module boundary.
1131trunc_f64procRepresents one top-level surface in the file contract and should be read as part of the module boundary.
1135fract_f64procRepresents one top-level surface in the file contract and should be read as part of the module boundary.
1139clamp_f64procRepresents one top-level surface in the file contract and should be read as part of the module boundary.
1143min_f64procRepresents one top-level surface in the file contract and should be read as part of the module boundary.
1147max_f64procRepresents one top-level surface in the file contract and should be read as part of the module boundary.
1151lerp_f64procRepresents one top-level surface in the file contract and should be read as part of the module boundary.
1155smoothstep_f64procRepresents one top-level surface in the file contract and should be read as part of the module boundary.
1159is_nanprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
1163is_infiniteprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
1167is_finiteprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
1171math_readyprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
1175math_healthprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
1179math_summaryprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
1183math_domainsprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
1187library_metaprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
1191math_selftestprocRepresents one top-level surface in the file contract and should be read as part of the module boundary.
1195stdlib_smoke_1procRepresents one top-level surface in the file contract and should be read as part of the module boundary.
1199stdlib_smoke_2procRepresents one top-level surface in the file contract and should be read as part of the module boundary.
1203stdlib_smoke_3procRepresents one top-level surface in the file contract and should be read as part of the module boundary.
1207stdlib_smoke_4procRepresents one top-level surface in the file contract and should be read as part of the module boundary.
1211stdlib_smoke_5procRepresents one top-level surface in the file contract and should be read as part of the module boundary.

The table is exhaustive for top-level declarations of the selected kinds. This file declares 309 matching surfaces.

Representative signatures

These signatures are shown in source order so the page keeps the feel of a reference manual, not just a keyword cloud.

  • const PI: f64 = 0.0 (line 9)
  • const E: f64 = 0.0 (line 11)
  • const TAU: f64 = 0.0 (line 13)
  • const HALF_PI: f64 = 0.0 (line 15)
  • const QUARTER_PI: f64 = 0.0 (line 17)
  • const DEG_TO_RAD: f64 = 0.0 (line 19)
  • const RAD_TO_DEG: f64 = 0.0 (line 21)
  • const I32_MIN: int = 0 (line 23)
  • const I32_MAX: int = 0 (line 25)
  • const BYTE_BITS: int = 0 (line 27)
  • const WORD_BITS: int = 0 (line 29)
  • const DEFAULT_SCALE: int = 0 (line 31)
  • const PERCENT_SCALE: int = 0 (line 33)
  • form Ratio { (line 35)
  • form IntRange { (line 39)
  • form IntStats { (line 43)
  • form Point2i { (line 47)
  • form Size2i { (line 51)

The list is intentionally capped here; the source file declares 308 matching signatures in total.

How to use this module

Start by reading the file as an ownership boundary. Ask three questions: what enters this module, what stable types or procedures it exports, and what adjacent module should stay outside of it.

  1. Read space and top-level imports first so the ownership boundary of math.vitl is explicit.
  2. Scan constants before procedures; they often encode precision, limits, or policy assumptions that explain later behavior.
  3. Read declared forms and picks before algorithms so the data vocabulary is stable in your head.
  4. Traverse procedures in source order; the early helpers usually explain the naming and numeric conventions used later.
  5. Only after that compare neighbor modules, because the right boundary choice matters more than memorizing one helper name.

User example

This example is generated from the actual stdlib module surface. Its job is not to be the smallest snippet possible; its job is to show a realistic consumer-shaped file that exercises the module and mirrors the language keywords the module itself relies on.

space demo/math
const SAMPLE_LABEL: string = "demo"
form UserReport {
  label: string,
  ready: bool
}
pick UserOutcome {
  case Ready(message: string)
  case Empty(reason: string)
}
proc run_example() -> UserOutcome {
    give UserOutcome.Ready("ok")
}

Keyword coverage

This table makes the “all keywords of the module” requirement auditable. It compares the detected Vitte keywords in the source file with the generated consumer example above.

KeywordPresent in module sourceUsed in generated user example
spaceyesyes
constyesyes
formyesyes
pickyesyes
procyesyes
giveyesyes

The generated snippet exercises every detected Vitte keyword used by this module.

Source shape

space vitte/stdlib_checked/math
const PI: f64 = 0.0
const E: f64 = 0.0
const TAU: f64 = 0.0
const HALF_PI: f64 = 0.0
const QUARTER_PI: f64 = 0.0
const DEG_TO_RAD: f64 = 0.0
const RAD_TO_DEG: f64 = 0.0
const I32_MIN: int = 0
const I32_MAX: int = 0

The excerpt is not meant to replace the file. It exists to make the module recognizable at first glance, the same way a Wikipedia infobox helps the reader orient before reading the whole article.

Source landmarks

Large files are easier to retain when they have visible landmarks. When the source contains explicit section banners, they are surfaced here; otherwise the first major declarations are used as anchors.

  • Line 1: space vitte/stdlib_checked/math
  • Line 9: const PI: f64 = 0.0
  • Line 11: const E: f64 = 0.0
  • Line 13: const TAU: f64 = 0.0
  • Line 15: const HALF_PI: f64 = 0.0
  • Line 17: const QUARTER_PI: f64 = 0.0
  • Line 19: const DEG_TO_RAD: f64 = 0.0
  • Line 21: const RAD_TO_DEG: f64 = 0.0

Source organization

When a file carries its own internal chaptering, those chapters usually reveal the intended reading order better than a flat symbol list. This section reconstructs that organization from the source itself.

File surfaces

Top-level items: 309. Procedures: 283. Data surfaces: 12. Constants: 13.

First visible names: vitte/stdlib_checked/math, PI, E, TAU, HALF_PI, QUARTER_PI, DEG_TO_RAD, RAD_TO_DEG, I32_MIN, I32_MAX

Complete API catalog

This catalog is the exhaustive file-level index for the module. It is intentionally closer to a generated encyclopedia appendix than to a tutorial summary.

Constants

LineNameSignatureRole
9PIconst PI: f64 = 0.0Defines a named constant reused across the module.
11Econst E: f64 = 0.0Defines a named constant reused across the module.
13TAUconst TAU: f64 = 0.0Defines a named constant reused across the module.
15HALF_PIconst HALF_PI: f64 = 0.0Defines a named constant reused across the module.
17QUARTER_PIconst QUARTER_PI: f64 = 0.0Defines a named constant reused across the module.
19DEG_TO_RADconst DEG_TO_RAD: f64 = 0.0Defines a named constant reused across the module.
21RAD_TO_DEGconst RAD_TO_DEG: f64 = 0.0Defines a named constant reused across the module.
23I32_MINconst I32_MIN: int = 0Defines a bound or precision constant that shapes runtime behavior.
25I32_MAXconst I32_MAX: int = 0Defines a bound or precision constant that shapes runtime behavior.
27BYTE_BITSconst BYTE_BITS: int = 0Defines a named constant reused across the module.
29WORD_BITSconst WORD_BITS: int = 0Defines a named constant reused across the module.
31DEFAULT_SCALEconst DEFAULT_SCALE: int = 0Defines a named constant reused across the module.
33PERCENT_SCALEconst PERCENT_SCALE: int = 0Defines a named constant reused across the module.

Data surfaces

LineNameSignatureRole
35Ratioform Ratio {Introduces a structured data shape that other procedures can exchange.
39IntRangeform IntRange {Introduces a structured data shape that other procedures can exchange.
43IntStatsform IntStats {Introduces a structured data shape that other procedures can exchange.
47Point2iform Point2i {Introduces a structured data shape that other procedures can exchange.
51Size2iform Size2i {Introduces a structured data shape that other procedures can exchange.
55Rect2iform Rect2i {Introduces a structured data shape that other procedures can exchange.
59Vec2iform Vec2i {Introduces a structured data shape that other procedures can exchange.
63Vec3iform Vec3i {Introduces a structured data shape that other procedures can exchange.
67MathManifestform MathManifest {Introduces a structured data shape that other procedures can exchange.
71MathHealthform MathHealth {Introduces a structured data shape that other procedures can exchange.
75MathSummaryform MathSummary {Introduces a structured data shape that other procedures can exchange.
79MathErrorpick MathError {Introduces a tagged variant type used to model distinct outcomes.

Procedures

LineNameSignatureRole
83math_error_codeproc math_error_code() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
87math_versionproc math_version() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
91math_nameproc math_name() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
95math_module_countproc math_module_count() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
99math_modulesproc math_modules() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
103math_manifestproc math_manifest() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
107addproc add() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
111subproc sub() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
115mulproc mul() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
119div_truncproc div_trunc() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
123remproc rem() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
127absproc abs() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
131minproc min() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
135maxproc max() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
139clampproc clamp() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
143signproc sign() -> int {Implements a security-sensitive transformation in the crypto boundary.
147betweenproc between() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
151compareproc compare() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
155negproc neg() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
159incproc inc() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
163decproc dec() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
167squareproc square() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
171cubeproc cube() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
175avg2proc avg2() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
179midpointproc midpoint() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
183safe_divproc safe_div() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
187safe_remproc safe_rem() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
191saturating_addproc saturating_add() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
195saturating_subproc saturating_sub() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
199saturating_mulproc saturating_mul() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
203checked_add_validproc checked_add_valid() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
207checked_mul_validproc checked_mul_valid() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
211gcdproc gcd() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
215lcmproc lcm() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
219gcd_manyproc gcd_many() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
223lcm_manyproc lcm_many() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
227is_evenproc is_even() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
231is_oddproc is_odd() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
235is_primeproc is_prime() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
239is_compositeproc is_composite() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
243next_primeproc next_prime() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
247prev_primeproc prev_prime() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
251prime_factorsproc prime_factors() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
255divisorsproc divisors() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
259totientproc totient() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
263coprimeproc coprime() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
267pow_intproc pow_int() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
271pow2proc pow2() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
275pow10proc pow10() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
279factorialproc factorial() -> int {Implements a counting or probability helper inside the math boundary.
283triangularproc triangular() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
287fibonacciproc fibonacci() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
291binomialproc binomial() -> int {Implements a counting or probability helper inside the math boundary.
295falling_factorialproc falling_factorial() -> int {Implements a counting or probability helper inside the math boundary.
299rising_factorialproc rising_factorial() -> int {Implements a counting or probability helper inside the math boundary.
303double_factorialproc double_factorial() -> int {Implements a counting or probability helper inside the math boundary.
307sqrt_floorproc sqrt_floor() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
311sqrt_ceilproc sqrt_ceil() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
315cube_root_floorproc cube_root_floor() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
319cube_root_ceilproc cube_root_ceil() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
323is_squareproc is_square() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
327is_cubeproc is_cube() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
331ilog2_floorproc ilog2_floor() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
335ilog10_floorproc ilog10_floor() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
339ceil_divproc ceil_div() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
343floor_divproc floor_div() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
347floor_modproc floor_mod() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
351div_round_nearestproc div_round_nearest() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
355mod_normalizeproc mod_normalize() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
359mod_addproc mod_add() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
363mod_subproc mod_sub() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
367mod_mulproc mod_mul() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
371mod_powproc mod_pow() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
375mod_negproc mod_neg() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
379mod_inverseproc mod_inverse() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
383mod_divproc mod_div() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
387is_pow2proc is_pow2() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
391prev_pow2proc prev_pow2() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
395next_pow2proc next_pow2() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
399has_single_bitproc has_single_bit() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
403bit_floorproc bit_floor() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
407bit_ceilproc bit_ceil() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
411bit_widthproc bit_width() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
415bit_countproc bit_count() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
419lowbitproc lowbit() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
423lowbit_pow2proc lowbit_pow2() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
427parityproc parity() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
431is_bit_setproc is_bit_set() -> int {Owns a concrete data shape or the operations that maintain it.
435set_bitproc set_bit() -> int {Owns a concrete data shape or the operations that maintain it.
439clear_bitproc clear_bit() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
443toggle_bitproc toggle_bit() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
447align_downproc align_down() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
451align_upproc align_up() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
455round_toproc round_to() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
459floor_toproc floor_to() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
463round_down_pow2proc round_down_pow2() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
467round_up_pow2proc round_up_pow2() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
471clamp_zeroproc clamp_zero() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
475clamp_nonzeroproc clamp_nonzero() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
479clamp_percentproc clamp_percent() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
483lerp_intproc lerp_int() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
487inv_lerp_intproc inv_lerp_int() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
491remap_intproc remap_int() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
495smoothstep_scaledproc smoothstep_scaled() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
499ratio_newproc ratio_new() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
503ratio_addproc ratio_add() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
507ratio_subproc ratio_sub() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
511ratio_mulproc ratio_mul() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
515ratio_divproc ratio_div() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
519ratio_to_scaledproc ratio_to_scaled() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
523ratio_percentproc ratio_percent() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
527rect_areaproc rect_area() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
531rect_perimeterproc rect_perimeter() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
535triangle_area2proc triangle_area2() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
539distance_sqproc distance_sq() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
543manhattan_distanceproc manhattan_distance() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
547pointproc point() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
551size2proc size2() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
555rectproc rect() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
559vec2iproc vec2i() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
563vec3iproc vec3i() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
567point_distance_sqproc point_distance_sq() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
571point_manhattanproc point_manhattan() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
575rect_rightproc rect_right() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
579rect_bottomproc rect_bottom() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
583rect_contains_pointproc rect_contains_point() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
587rect_intersectsproc rect_intersects() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
591vecproc vec() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
595vec_addproc vec_add() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
599vec_subproc vec_sub() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
603vec_scaleproc vec_scale() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
607vec_dotproc vec_dot() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
611vec_norm_sqproc vec_norm_sq() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
615vec2i_addproc vec2i_add() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
619vec2i_subproc vec2i_sub() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
623vec2i_scaleproc vec2i_scale() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
627vec2i_dotproc vec2i_dot() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
631vec2i_crossproc vec2i_cross() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
635vec2i_norm_sqproc vec2i_norm_sq() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
639vec3i_addproc vec3i_add() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
643vec3i_subproc vec3i_sub() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
647vec3i_scaleproc vec3i_scale() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
651vec3i_dotproc vec3i_dot() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
655vec3i_crossproc vec3i_cross() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
659vec3i_norm_sqproc vec3i_norm_sq() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
663cxproc cx() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
667cx_addproc cx_add() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
671cx_subproc cx_sub() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
675cx_mulproc cx_mul() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
679cx_conjproc cx_conj() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
683cx_abs_sqproc cx_abs_sq() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
687matproc mat() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
691mat_idproc mat_id() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
695mat_addproc mat_add() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
699mat_subproc mat_sub() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
703mat_mulproc mat_mul() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
707mat_traceproc mat_trace() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
711mat_detproc mat_det() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
715arr_lenproc arr_len() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
719arr_is_emptyproc arr_is_empty() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
723arr_firstproc arr_first() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
727arr_lastproc arr_last() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
731arr_containsproc arr_contains() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
735arr_index_ofproc arr_index_of() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
739arr_countproc arr_count() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
743arr_last_index_ofproc arr_last_index_of() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
747arr_copyproc arr_copy() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
751arr_appendproc arr_append() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
755arr_prependproc arr_prepend() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
759arr_concatproc arr_concat() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
763arr_pushproc arr_push() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
767arr_setproc arr_set() -> int {Owns a concrete data shape or the operations that maintain it.
771arr_swapproc arr_swap() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
775arr_clearproc arr_clear() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
779arr_popproc arr_pop() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
783arr_pop_atproc arr_pop_at() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
787arr_insertproc arr_insert() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
791arr_remove_atproc arr_remove_at() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
795arr_repeatproc arr_repeat() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
799arr_fillproc arr_fill() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
803arr_reverseproc arr_reverse() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
807arr_sumproc arr_sum() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
811arr_minproc arr_min() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
815arr_maxproc arr_max() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
819arr_meanproc arr_mean() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
823arr_mean_scaledproc arr_mean_scaled() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
827arr_rangeproc arr_range() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
831arr_sum_absproc arr_sum_abs() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
835arr_productproc arr_product() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
839arr_anyproc arr_any() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
843arr_allproc arr_all() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
847arr_count_nonzeroproc arr_count_nonzero() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
851arr_prefix_sumproc arr_prefix_sum() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
855arr_prefix_minproc arr_prefix_min() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
859arr_prefix_maxproc arr_prefix_max() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
863arr_takeproc arr_take() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
867arr_dropproc arr_drop() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
871arr_headproc arr_head() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
875arr_tailproc arr_tail() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
879arr_sliceproc arr_slice() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
883arr_rotate_leftproc arr_rotate_left() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
887arr_rotate_rightproc arr_rotate_right() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
891arr_replace_sliceproc arr_replace_slice() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
895arr_spliceproc arr_splice() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
899arr_rotateproc arr_rotate() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
903arr_enumerateproc arr_enumerate() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
907arr_zipproc arr_zip() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
911arr_chunksproc arr_chunks() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
915arr_clamp_eachproc arr_clamp_each() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
919arr_getproc arr_get() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
923arr_statsproc arr_stats() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
927arr_sort_simpleproc arr_sort_simple() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
931arr_median_floorproc arr_median_floor() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
935arr_variance_scaledproc arr_variance_scaled() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
939arr_stddev_floorproc arr_stddev_floor() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
943permutationsproc permutations() -> int {Implements a counting or probability helper inside the math boundary.
947combinationsproc combinations() -> int {Implements a counting or probability helper inside the math boundary.
951probability_percentproc probability_percent() -> int {Implements a counting or probability helper inside the math boundary.
955odds_ratioproc odds_ratio() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
959pairingsproc pairings() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
963percentproc percent() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
967percent_scaledproc percent_scaled() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
971arithmetic_termproc arithmetic_term() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
975arithmetic_sumproc arithmetic_sum() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
979geometric_termproc geometric_term() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
983triangular_termproc triangular_term() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
987fibonacci_termproc fibonacci_term() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
991finite_differenceproc finite_difference() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
995slope_betweenproc slope_between() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
999derivative_at_intproc derivative_at_int() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
1003normalize_degreesproc normalize_degrees() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
1007opposite_angleproc opposite_angle() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
1011complement_angleproc complement_angle() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
1015supplement_angleproc supplement_angle() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
1019quadrantproc quadrant() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
1023is_right_angleproc is_right_angle() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
1027is_straight_angleproc is_straight_angle() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
1031degrees_to_radiansproc degrees_to_radians() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
1035radians_to_degreesproc radians_to_degrees() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
1039sinproc sin() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
1043cosproc cos() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
1047tanproc tan() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
1051asinproc asin() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
1055acosproc acos() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
1059atanproc atan() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
1063atan2proc atan2() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
1067sinhproc sinh() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
1071coshproc cosh() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
1075tanhproc tanh() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
1079asinhproc asinh() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
1083acoshproc acosh() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
1087atanhproc atanh() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
1091expproc exp() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
1095logproc log() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
1099log10proc log10() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
1103powproc pow() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
1107sqrtproc sqrt() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
1111fabsproc fabs() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
1115fmodproc fmod() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
1119ceilproc ceil() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
1123floorproc floor() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
1127round_f64proc round_f64() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
1131trunc_f64proc trunc_f64() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
1135fract_f64proc fract_f64() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
1139clamp_f64proc clamp_f64() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
1143min_f64proc min_f64() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
1147max_f64proc max_f64() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
1151lerp_f64proc lerp_f64() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
1155smoothstep_f64proc smoothstep_f64() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
1159is_nanproc is_nan() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
1163is_infiniteproc is_infinite() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
1167is_finiteproc is_finite() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
1171math_readyproc math_ready() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
1175math_healthproc math_health() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
1179math_summaryproc math_summary() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
1183math_domainsproc math_domains() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
1187library_metaproc library_meta() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
1191math_selftestproc math_selftest() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
1195stdlib_smoke_1proc stdlib_smoke_1() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
1199stdlib_smoke_2proc stdlib_smoke_2() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
1203stdlib_smoke_3proc stdlib_smoke_3() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
1207stdlib_smoke_4proc stdlib_smoke_4() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.
1211stdlib_smoke_5proc stdlib_smoke_5() -> int {Represents one top-level surface in the file contract and should be read as part of the module boundary.

Integration boundaries

Within math, this file should remain focused. If a future helper changes the host boundary, scheduling boundary, or data-shape boundary, it probably belongs in a neighbor module instead of being added here by convenience.

  • Family responsibility: Arithmetic, algebra, comparison, calculus, geometry, modular arithmetic, number theory, probability, statistics, matrix, and vector helpers.
  • Family architecture role: Use `math` when the transformation itself is the feature. This family exists so algorithmic intent stays visible and testable.

Composition guidance

Choose this module when

  • Choose math.vitl when the main question is owned by this module rather than by transport, storage, orchestration, or user-interface code.
  • A scoring engine can compute aggregates in `math` while keeping I/O and transport elsewhere.
  • A statistics or matrix chapter should explain the workflow around the computation, not just a single formula.

Pause before extending it when

  • Avoid extending this file when the new helper mostly changes the boundary to host I/O, runtime coordination, or foreign integration instead of staying inside math.
  • Check nearby modules such as math/algebra.vitl, math/arithmetic.vitl, math/arrays.vitl before adding convenience wrappers here.

Relationship table

This table keeps the page closer to a real encyclopedia entry: a module is easier to understand when compared with its nearest alternatives in the same family.

NeighborProceduresData surfacesWhy compare it
math/algebra.vitl140Shares the same family boundary but carries a distinct slice of responsibility.
math/arithmetic.vitl722Shares the same family boundary but carries a distinct slice of responsibility.
math/arrays.vitl832Shares the same family boundary but carries a distinct slice of responsibility.
math/calculus.vitl563Shares the same family boundary but carries a distinct slice of responsibility.
math/comparison.vitl470Shares the same family boundary but carries a distinct slice of responsibility.
math/complex.vitl490Shares the same family boundary but carries a distinct slice of responsibility.
math/geometry.vitl720Shares the same family boundary but carries a distinct slice of responsibility.
math/logic.vitl200Shares the same family boundary but carries a distinct slice of responsibility.

Neighbor modules