|
7 | 7 | from math import gcd |
8 | 8 | from typing import Any, Literal, cast |
9 | 9 |
|
10 | | -from jacobian.canonical import canonicalize_json |
| 10 | +from jacobian.canonical import canonicalize_json, format_canonical_integer |
11 | 11 | from jacobian.contracts.capabilities import ( |
12 | 12 | CapabilityInvocationExample, |
13 | 13 | CapabilityMode, |
@@ -40,7 +40,10 @@ def _homogeneous_basis(degree: int) -> tuple[tuple[int, int, int], ...]: |
40 | 40 |
|
41 | 41 | def _fraction_text(value: Any) -> str: |
42 | 42 | fraction = Fraction(value) |
43 | | - return f"{fraction.numerator}/{fraction.denominator}" |
| 43 | + return ( |
| 44 | + f"{format_canonical_integer(fraction.numerator)}/" |
| 45 | + f"{format_canonical_integer(fraction.denominator)}" |
| 46 | + ) |
44 | 47 |
|
45 | 48 |
|
46 | 49 | def _matrix_digest( |
@@ -97,8 +100,8 @@ def _multiplier_polynomial( |
97 | 100 | terms=tuple( |
98 | 101 | RationalPolynomialTerm( |
99 | 102 | coefficient=CanonicalRational( |
100 | | - num=str(coefficient.numerator), |
101 | | - den=str(coefficient.denominator), |
| 103 | + num=format_canonical_integer(coefficient.numerator), |
| 104 | + den=format_canonical_integer(coefficient.denominator), |
102 | 105 | ), |
103 | 106 | exponents=exponents, |
104 | 107 | ) |
@@ -269,8 +272,8 @@ def compute_graded_jacobian_syzygy( |
269 | 272 | multiplier_degree=multiplier_degree, |
270 | 273 | coefficient_vector=tuple( |
271 | 274 | CanonicalRational( |
272 | | - num=str(value.numerator), |
273 | | - den=str(value.denominator), |
| 275 | + num=format_canonical_integer(value.numerator), |
| 276 | + den=format_canonical_integer(value.denominator), |
274 | 277 | ) |
275 | 278 | for value in vector |
276 | 279 | ), |
|
0 commit comments