Contact

FLT.RADIX Function (Gnumeric)

Math Beginner Gnumeric Gnumeric 1.12.57

Inspect Gnumeric’s floating-point radix, distinguish binary and decimal numeric builds, and avoid confusing internal base with cell formatting.

Verification status: See the evidence and test scope described in this guide. How formula examples are checked

Quick answer: =FLT.RADIX() reports the base of the floating-point number system used by the build. The binary64 reference result is 2; Gnumeric’s decimal64 source branch explicitly uses 10.

Availability and evidence scope

  • Introduced: Gnumeric 1.12.57. Its release notes name all four FLT functions as new testing aids. No exact introduction day is inferred.
  • Source support: Registered in the Floating Point Functions plugin in Gnumeric 1.12.62. No retirement is established. Last functioning application version is unverified for this guide.
  • Build scope: Numeric constants and neighbors depend on the selected floating type. The numeric definitions distinguish double, long-double and experimental decimal64 configurations. Binary64 examples below are explicitly conditional.
  • Evidence dates: Gnumeric release source was retained October 13–14, 2026 and reviewed October 15. Reference calculations and Python library controls ran October 15. They are independent numerical evidence, not native Gnumeric, headless application or GUI execution.

Syntax and result

=FLT.RADIX()

This zero-argument function returns an integer. There are no optional arguments, datasets to aggregate or defaults to fill in. Its callback returns GNM_RADIX. In the default double and optional long-double source branches, GNM_RADIX is the compiler’s FLT_RADIX constant; in the decimal64 branch it is explicitly 10. The source supports multiple configurations, so the function is useful precisely because a hard-coded expectation is not universal.

A radix of 2 means powers of two underlie the floating representation. A radix of 10 means powers of ten do. Neither result tells you how many significant digits are retained, what the exponent limits are, or whether every operation in a formula is exact. Two builds may both report 2 while differing in precision and range.

Reproducible build-fingerprint worksheet

Create NumericProfile with Parameter in A1 and Value in B1. Put Radix in A2 and =FLT.RADIX() in B2. Put Smallest normal in A3 and =FLT.MIN() in B3. Put Largest finite in A4 and =FLT.MAX() in B4. For an IEEE binary64 reference configuration the three values are 2, approximately 2.2250738585072014E-308, and approximately 1.7976931348623157E+308.

Keep all three together with the application version and build description when comparing calculations between machines. B2 alone cannot distinguish binary64 from a wider binary implementation. These formulas describe a proposed diagnostic sheet, not observations from an installed Gnumeric session.

For a simple exact control, put =B2^3 in B6 and =1/B2 in B7. In the binary64 model they are 8 and 0.5. In the decimal64 configuration’s arithmetic interpretation they are 1000 and 0.1. The decimal entries here follow the documented radix mapping and elementary arithmetic; no decimal64 engine was executed.

Reference cases and what each one establishes

Configuration or formula Reference result Meaning
Binary64 =FLT.RADIX() 2 Binary floating-point base
Decimal64 source branch =FLT.RADIX() 10 Decimal floating-point base
Binary64 =FLT.RADIX()^3 8 Third power of its base
Binary64 =1/FLT.RADIX() 0.5 Reciprocal of its base
Decimal64 =FLT.RADIX()^3 1000 Mathematical reference for base 10
Decimal64 =1/FLT.RADIX() 0.1 Mathematical reference for base 10

These are separate build scenarios, not different outputs caused by cell formatting. Changing a cell to decimal, percentage or scientific display does not switch the compiled arithmetic base. FLT.RADIX also has no connection to a text conversion function’s requested output base: displaying an integer in hexadecimal does not make the spreadsheet’s floating radix 16.

Advanced use: radix is necessary context, not a precision test

Extend NumericProfile with =FLT.NEXTAFTER(1,"+")-1 in B9 and =1-FLT.NEXTAFTER(1,0) in B10. For binary64, the reference gaps are 2^-52 and 2^-53. Their ratio =B9/B10 is 2. This unequal spacing immediately above and below 1 occurs because 1 is a power-of-two boundary.

A second diagnostic uses 2 instead of 1: =FLT.NEXTAFTER(2,"+")-2 gives 2^-51 in the binary64 model, twice the upward gap at 1. The representable grid is therefore not a single fixed decimal increment everywhere. FLT.RADIX explains the base, while the neighboring-value function exposes local spacing. Keep the stated binary64 assumptions attached to these numbers; a wider binary build can give different gaps with the same radix result.

For a reproducibility report, record the actual observed outputs rather than replacing unexpected values with the reference column. Also record the intended numerical tolerance and why it fits the problem. A radix value does not choose a tolerance for currency, measurements or statistical comparisons.

Errors, compatibility and troubleshooting

There are no data-dependent errors inside the constant-returning callback. Additional arguments are outside the registered zero-argument signature, and exact editor diagnostics were not tested. If the function name is missing, check the Gnumeric release and Floating Point Functions plugin. The registration labels this group unique to Gnumeric; do not assume a formula survives export to another spreadsheet application.

The release history introduced experimental decimal64 support alongside these diagnostics. That is evidence of a supported source configuration, not a promise that a downloaded package uses it. This guide does not identify the numeric configuration of the reader’s installation, test plugin loading, or establish a working application version. The build fingerprint is designed to help make those observations explicit.