Contact

PERMUT Function (Gnumeric)

Math Intermediate Gnumeric Gnumeric 0.19

Use PERMUT in Gnumeric for ordered selections without replacement. Includes native examples, the zero-case help discrepancy and fractional-input rules.

Verification status: 19 reference, boundary and advanced-check formulas were recalculated with Gnumeric 1.12.57 ssconvert. Retained identities and results were checked against independent calculations. Gnumeric 1.12.62 was source-checked only. How formula examples are checked

Zero-case correction: PERMUT(0,0) returns 1 in the native test and is allowed by current source, despite an overbroad zero-set warning in the help.

Quick answer: =PERMUT(5,2) gives 20 in the tested Gnumeric 1.12.57 build.

Availability and version history

  • Introduced: Gnumeric 0.19 release notes explicitly record its addition.
  • Supported in: Gnumeric 1.12.62; no retirement is established.
  • Scope: Desktop Gnumeric with its Statistics plugin. English comma-separated formulas are shown.
  • Checked: October 14, 2026. The tables and named advanced check use 1.12.57 ssconvert. Current 1.12.62 source was inspected; that release was not executed.

What PERMUT returns

PERMUT(n,k) counts ordered selections of k distinct objects from n available objects, without replacement. For integers 0≤k≤n, the result is n!/(n−k)!, or the product n×(n−1)×…×(n−k+1). Order matters: choosing A then B differs from choosing B then A. Versioned function help.

Syntax and arguments

=PERMUT(n,k)

n is the number of available objects; k is the number of ordered positions. Both arguments are required. The implementation applies its integer-floor routine before checking 0≤k≤n.

Current implementation.

Reproducible examples

The eight ordinary results below were independently checked using integer arithmetic.

Formula Gnumeric 1.12.57 result
=PERMUT(5,2) 20
=PERMUT(7,3) 210
=PERMUT(10,4) 5040
=PERMUT(3,3) 6
=PERMUT(5,0) 1
=PERMUT(1,1) 1
=PERMUT(2,1) 2
=PERMUT(0,0) 1

Practical worksheet

Assigning first, second and third prizes to 20 distinct entrants has =PERMUT(20,3) = 6840 outcomes, also checked natively. This assumes no entrant can receive more than one prize and each rank is distinct.

If you are choosing an unranked committee, divide by the k! possible orders or use a combinations function. Five people filling two distinct jobs have 20 assignments, whereas a two-person committee has 10 memberships. If the same object can be reused, the with-repetition count is n^k instead.

Advanced interpretation and checks

The recurrence P(n,k)=n×P(n−1,k−1) provides an independent check. P(7,3)=7×P(6,2)=7×30=210. The zero-position convention P(n,0)=1 counts the one empty arrangement.

Help discrepancy: The pinned help says n=0 gives #NUM!, but its implementation accepts (0,0), and the native test returns 1. The tested (0,2) case correctly errors. The table follows the source and native result rather than repeating the help’s overbroad statement.

Large factorial-style counts quickly exceed exact binary64 integer precision even before overflow. The small integer examples here do not establish exact arbitrary-size combinatorial arithmetic.

Version-specific source comparison

The retained 1.12.57 and 1.12.62 worksheet callbacks have the same relevant argument guards and calculation dispatch. That source comparison does not establish execution or universal floating-point equivalence in the later build.

Boundaries and troubleshooting

Positive fractions are floored: PERMUT(5.9,2.9)=20. Negative fractions are not truncated toward zero; −0.9 floors below zero and is invalid. Numeric text such as “5” is converted in this build, while unparseable text gives #VALUE!. An empty first reference becomes zero, so PERMUT(F5,0)=1 can conceal missing data if blanks are not checked.

F5 is an actually empty cell. Errors below are the tested build’s results, not zero-valued mathematical answers.

Formula Gnumeric 1.12.57 result
=PERMUT(0,2) #NUM!
=PERMUT(2,3) #NUM!
=PERMUT(-0.9,2) #NUM!
=PERMUT(5,-0.9) #NUM!
=PERMUT(5.9,2.9) 20
=PERMUT("5",2) 20
=PERMUT("abc",2) #VALUE!
=PERMUT(F5,0) 1
=PERMUT(5) #N/A
=PERMUT(5,2,1) #N/A

Official evidence and checking scope

The retained workbook’s stale SUM cache and uncached SUM both recalculated correctly. Formula identities, typed inputs and native results were inspected. The importer reported unsupported style-extension elements; that warning is retained, and no all-formatting claim is made. GUI entry, other locales and later-release output were not tested.