IMPOWER Function (OpenOffice Calc)
Raise complex values to a real power in Apache OpenOffice, with principal-branch examples, reciprocal powers and explicit zero-base restrictions.
Verification status: Eight reference formulas and 5 diagnostic cases were recalculated in Apache OpenOffice 4.1.16 on Linux x86-64, Build 9816, using XLSX import and GUI hard recalculation. Saved formula identities and typed results were checked. How formula examples are checked
Quick answer: =IMPOWER("3+4i";2) returned -7+24i in the tested Apache OpenOffice 4.1.16 build.
Availability and version history
- Introduced: First release not established; documented by OpenOffice.org 3.3.
- Supported in: Apache OpenOffice 4.1.16; this identifies a verified release, not a final supported version.
- Scope: Desktop Calc with its Analysis add-in, English function names and semicolon-separated formulas.
- Checked: October 14, 2026. Eight reference formulas and the listed diagnostics were recalculated after XLSX import in 4.1.16 on Linux x86-64, Build 9816. Source and independent reference calculations were also checked.
What IMPOWER returns
IMPOWER raises a parsed complex base to a real exponent and returns formatted complex-number text. This program’s exponent argument is a real number. It is not the complex-exponent contract provided by every other spreadsheet implementation. Release entry.
Syntax and arguments
=IMPOWER(ComplexNumber; Exponent)
Exactly two arguments are required: a complex base and a real numeric exponent. For a nonzero base the helper uses magnitude and principal phase. If the base is zero, the exponent must be strictly positive; zero raised to zero or to a negative exponent is rejected.
Reproducible examples
The native column records the saved 4.1.16 results. The native strings are retained exactly. Independent component references are rounded to twelve decimal places, with rounded negative zero shown as zero. A tiny stored residual can therefore appear in the native string beside a reference component rounded to zero. Every successful result below is string-typed, including pure real-looking outputs.
| Formula | Native 4.1.16 string | Independent (real, imaginary) reference |
|---|---|---|
=IMPOWER("3+4i";2) |
-7+24i |
(-7, 24) |
=IMPOWER("3-4i";2) |
-7-24i |
(-7, -24) |
=IMPOWER("-3+4i";0.5) |
1+2i |
(1, 2) |
=IMPOWER("-3-4i";2) |
-7.00000000000001+24i |
(-7, 24) |
=IMPOWER("1";-1) |
1 |
(1, 0) |
=IMPOWER("i";0) |
1 |
(1, 0) |
=IMPOWER("-1";3) |
-1+3.67394039744206e-16i |
(-1, 0) |
=IMPOWER("0.5+0.25i";3) |
0.03125+0.171875i |
(0.03125, 0.171875) |
Practical worksheet
=IMPOWER("3+4i";2) represents −7+24i, obtained from 9+24i−16. A fractional exponent selects a principal branch: the table includes the square root of −3+4i. For that value the principal root is 1+2i.
Put the complex base in A2 and a deliberate real exponent in B2, then use =IMPOWER(A2;B2). This layout illustrates the tested literal cases. Do not supply a string such as “i” expecting it to be a complex exponent.
Advanced interpretation and checks
For nonzero z=r exp(iθ), the helper computes rᵖ(cos(pθ)+i sin(pθ)), using a principal θ from acos(real/r) and the imaginary sign. Integer powers agree mathematically with repeated multiplication, but floating-point trigonometric reconstruction can retain tiny residual components.
A power of zero exponent returns 1 for a nonzero base. A negative exponent produces a reciprocal power. For example, (3+4i)⁻¹=0.12−0.16i, and multiplication by the original base gives 1 mathematically.
Fractional-power identities depend on branches. In general, applying two principal powers in succession is not interchangeable with multiplying the exponents. With z=−1, squaring first and then taking a principal square root gives +1, rather than the original −1.
Boundaries and troubleshooting
The zero-base diagnostics distinguish 0², which is accepted as zero, from 0⁰ and 0⁻¹, which are rejected. Keep those native errors rather than inventing a finite result or accepting a nonfinite component string.
The exponent “i” diagnostic confirms an invalid argument in this real-exponent path. Malformed base text is also rejected. Large powers can overflow and tiny magnitudes with negative powers can grow rapidly; the ordinary reference set does not establish safe extreme ranges.
These additional formulas were recalculated through the same import path. Error displays are retained as errors, even when an ODS numeric attribute stores zero.
| Formula | Observed result or error |
|---|---|
=IMPOWER("0";0) |
Err:502 |
=IMPOWER("0";-1) |
Err:502 |
=IMPOWER("0";2) |
0 |
=IMPOWER("2";"i") |
#VALUE! |
=IMPOWER("abc";2) |
Err:502 |
Other spreadsheet implementations
The IMPOWER guide for Calligra Sheets documents that product’s own syntax and tested behavior. A shared function name does not guarantee the same argument conversion, text parsing, branch or precision rules.
Official evidence and checking scope
- Function-specific release entry
- Complex algorithm or collection helper
- Strict complex-string parser
- Finite-output string formatter
The saved ODS retained every tested formula identity. A deliberately stale SUM cache changed from 999999 to 3, and an uncached SUM returned 7 after hard recalculation. Native evidence covers the eight reference formulas and listed diagnostics only. Other explanatory compositions are independent mathematical checks; other releases, locales and extreme-value behavior were not established by this run.