IMPOWER Function (Gnumeric)
Raise a complex base to a complex exponent in Gnumeric, with integer-power examples and branch cautions.
Verification status: Official documentation referenced; example outcomes independently reasoned or arithmetically checked where stated. Not executed in Gnumeric. How formula examples are checked
Evidence boundary: The examples were independently calculated and checked against official documentation and the Gnumeric 1.12.62 source. Native execution, locale checks and file round-trips were not performed.
What IMPOWER does
IMPOWER raises a complex base z1 to a complex exponent z2. The official Gnumeric 1.12 manual calls both arguments complex numbers. A real exponent is one supported special case, rather than the entire documented domain. Real integer exponents are still the clearest starting example. In general, non-integer and complex powers involve the complex logarithm and branch conventions; do not assume all possible inputs have a unique real-valued result.
Version-specific error distinction: The online 1.12 manual describes malformed complex inputs as
#VALUE!. The official 1.12.62 source instead returns#NUM!when parsing a malformed complex string; other unsupported value types can still return#VALUE!. Any#VALUE!expectations below are the manual’s older documented rule, not verified 1.12.62 output. No native error test was performed.
Official syntax and arguments
=IMPOWER(z1,z2)
z1 is the complex base; z2 is the complex exponent (a real value is a special case). Both are required and no default exponent is documented. The official manual documents #VALUE! when either supplied value is invalid as a complex number. This is distinct from Excel help that may describe a real numeric exponent; Gnumeric’s own documented signature is the authority for this guide.
Reproducible worksheet
| Cell | Enter | Mathematical interpretation |
|---|---|---|
| A2 | 2 |
First real coefficient |
| B2 | 3 |
First imaginary coefficient |
| C2 | =COMPLEX(A2,B2) |
2+3i |
| A3 | 1 |
Second real coefficient |
| B3 | -2 |
Second imaginary coefficient |
| C3 | =COMPLEX(A3,B3) |
1−2i |
| D2 | =IMPOWER(C2,2) |
-5+12i mathematically |
| D3 | =IMREAL(D2) |
-5 |
| D4 | =IMAGINARY(D2) |
12 |
Independent arithmetic: (2+3i)²=4+12i+9i²=-5+12i. The exponent 2 is used as a numeric literal representing a real subset of complex numbers; the public manual does not list locale-specific coercion details for every numeric and complex-string combination. If your native installation does not accept numeric 2 here, use =IMPOWER(C2,COMPLEX(2,0)) and document the behavior.
Further expected examples
=IMPOWER("1+i",2)→ mathematically0+2i.=IMPOWER(COMPLEX(1,1),3)→ mathematically-2+2i.=IMPOWER(COMPLEX(3,4),2)→ mathematically-7+24i.
Advanced application: repeated complex gain
Suppose C2=COMPLEX(2,3) is a dimensionless complex transfer factor applied twice. =IMPOWER(C2,2) gives mathematical -5+12i; =IMABS(IMPOWER(C2,2)) gives 13, consistent with =IMABS(C2)^2 since |2+3i|²=13. This cross-check audits the magnitude without inferring the exact result-string formatting.
For genuinely non-integer or complex exponents, the independent principal-value expression is exp(z2·Log(z1)). For example, (1+i)^(1+i) has a principal-branch mathematical value of approximately 0.2739572538+0.5837007588i; this is a mathematical reference only, not a verified Gnumeric branch selection or native result. Verify complex branch, zero base, and special cases in Gnumeric before using such values for decisions.
Troubleshooting and limits
| Symptom | Evidence-based check |
|---|---|
#VALUE! |
The official Gnumeric manual says an invalid complex base or exponent causes this error. |
| Unexpected real/imaginary signs | Expand a small integer power by ordinary multiplication and verify components with IMREAL/IMAGINARY. |
| Different answer for fractional powers | Complex logarithms have branches. Confirm the intended principal-value convention and exact native function output. |
0^0, 0 to negative/complex exponent |
This is a singular/ambiguous special case mathematically. The public manual does not document a comprehensive result table. The official 1.12.62 callback explicitly returns #NUM! for zero raised to zero; other special cases and exact native behavior remain untested. |
Numeric 2 versus "2" input |
The manual identifies complex-number argument types but doesn’t document every coercion path. Prefer a COMPLEX(2,0) expression for a stricter test. |
| Excel migration | Gnumeric’s manual uses a complex exponent in its signature. Its Excel-compatibility label is not proof that Excel accepts the same exponent domain or imports it identically. |
Compatibility
Gnumeric’s manual labels IMPOWER Excel-compatible and its catalogue lists a complete implementation with exhaustive upstream testing. Neither is a substitute for direct native testing, especially for complex exponents, branches, special zero cases, and import/export of the resulting expressions. The 1.12.62 release notes describe complex-function compatibility improvements generally, without certifying each corner case.
Verification and applicability
These examples are independently calculated expectations, not observed output from a running Gnumeric installation. The published Gnumeric 1.12 manual documents the function’s signature and relevant error behavior, and the Gnumeric project’s function catalogue records upstream implementation and test classifications. The official 1.12.62 release announcement confirms that release exists (September 2026). The live manual/catalogue are not immutable 1.12.62 source-code snapshots, so document coverage must not be confused with runtime verification of every locale, platform, or build.
The examples use the English function names and the comma separators shown in the official manual. Your localized Gnumeric configuration might use another argument separator or decimal notation; use its Function Browser to confirm the accepted local entry format. Complex-number strings in the examples use the i suffix consistently. The Gnumeric manual also documents COMPLEX’s j suffix option, but do not mix conventions in one calculation without validating that workflow in your installation. Gnumeric is generally distributed through Linux/Unix-like systems and source packages; the project does not provide current official Windows binaries.
Related Gnumeric guides
Official evidence and limitations (checked 2026-10-13 UTC)
- Gnumeric Manual 1.12 — Complex functions: documented purpose, signature, argument meanings,
#VALUE!notes, Excel-compatibility label and cross-references for IMPOWER. Dynamic 1.12-series documentation, not a pinned release source tree. - Official Gnumeric function catalogue: impower listed as Complete implementation with Exhaustive upstream test classification; that describes upstream project metadata, not execution of this worksheet. The live catalogue currently presents an aggregate count that differs from the 1.12.62 release registry, so it is not used to assert catalogue completeness.
- Gnumeric 1.12.62 official release announcement: release existence and Excel/complex-function compatibility work (the release announcement does not guarantee each example or Excel round-trip).
- GNOME official 1.12 source-release directory: official versioned source distribution; the official 1.12.62 source was inspected for this review.
Evidence categories: official-manual documentation checks; official-catalogue metadata checks; independent arithmetic checks. Not performed: native function execution, locale-specific execution, Excel comparisons, GUI screenshots, or application screenshots.