package odin-algebra:algebraic_structures/integral_domain
Overview
Interface for a Integral Domain cancel - called to perform a perfect division if left := a * right after cancel is called ans == a. this function is only called when the cancelation definitely works. this functions can be called where 2 or 3 input parameters point to the same piece of memory.
Index
Types (1)
Variables (0)
This section is empty.
Procedure Groups (0)
This section is empty.
Types
IntegralDomain ¶
IntegralDomain :: struct($T: typeid) { … // See source for fields }
Interface for a Integral Domain: cancel - called to perform a perfect division if left := a * right after cancel is called ans == a. this function is only called when the cancelation definitely works. this functions can be called where 2 or 3 input parameters point to the same piece of memory.
Related Procedures With Parameters
Constants
INTEGRAL_DOMAIN_F32 ¶
INTEGRAL_DOMAIN_F32: IntegralDomain($T=f32) : IntegralDomain(f32){ring.RING_F32, cancel_f32}
INTEGRAL_DOMAIN_I32 ¶
INTEGRAL_DOMAIN_I32: IntegralDomain($T=i32) : IntegralDomain(i32){ring.RING_I32, cancel_i32}
INTEGRAL_DOMAIN_I64 ¶
INTEGRAL_DOMAIN_I64: IntegralDomain($T=i64) : IntegralDomain(i64){ring.RING_I64, cancel_i64}
INTEGRAL_DOMAIN_U32 ¶
INTEGRAL_DOMAIN_U32: IntegralDomain($T=u32) : IntegralDomain(u32){ring.RING_U32, cancel_u32}
Variables
This section is empty.
Procedures
test_integral_domain_axioms ¶
test_integral_domain_axioms :: proc(t: ^testing.T, generator: prop_test.Generator($T), id: IntegralDomain($T)) {…}
called to run prop based tests to see if a ring implementation violates the integral domain axioms
test_memory_safety_axioms ¶
test_memory_safety_axioms :: proc(t: ^testing.T, generator: prop_test.Generator($T), id: IntegralDomain($T)) {…}
called to run prop based tests to see if a integral domain implementation is memory safe
Procedure Groups
This section is empty.
Source Files
Generation Information
Generated with odin version dev-2025-04 (vendor "odin") Linux_amd64 @ 2025-05-13 09:15:55.502764705 +0000 UTC