{
  "category": "Math and trigonometry functions",
  "display_name": "LN",
  "entry_kind": "built_in_function",
  "eval_api": {
    "method": "POST",
    "url": "https://handbook.dnacalc.com/api/eval"
  },
  "function_id": "FUNC.LN",
  "implementation_state": {
    "answer_bank": {
      "excel_builds": [
        "20131",
        "20228",
        "20430",
        "20527",
        "?"
      ],
      "larger_numeric": 0,
      "last_bit": 0,
      "matched": 1685,
      "other_mismatch": 0,
      "refused": 0,
      "rows": 1685,
      "unread": 0,
      "worst_ulp": 0
    },
    "detail": "Recorded: 1,685 in the answer bank and 171 workbook cells.",
    "dnacalc_commit": "9e1884369a678158dd82d3d74188daf986995e87",
    "in_catalogue": true,
    "state": "matches",
    "state_label": "Matches every recorded Excel answer",
    "summary": "Matches all 1,856 recorded answers",
    "workbook_corpus": {
      "cells": 171,
      "matched": 171
    }
  },
  "implementations": [
    {
      "commit": "9e1884369a678158dd82d3d74188daf986995e87",
      "flavour": "excel-compatibility-candidate",
      "language": "Rust",
      "name": "CalcFunc",
      "own_code": [
        "https://github.com/DnaCalc/DnaCalc/blob/9e1884369a678158dd82d3d74188daf986995e87/crates/calc-func/src/catalogue/math.rs#L95-L95",
        "https://github.com/DnaCalc/DnaCalc/blob/9e1884369a678158dd82d3d74188daf986995e87/crates/calc-func/src/ported/ln_fn.rs#L3-L9"
      ],
      "repository": "https://github.com/DnaCalc/DnaCalc",
      "shared_code": [
        "catalogue/math::unary"
      ],
      "source": "https://github.com/DnaCalc/DnaCalc/blob/9e1884369a678158dd82d3d74188daf986995e87/crates/calc-func/src/catalogue/math.rs#L95-L95",
      "state": "matches",
      "suite": null,
      "summary": "Matches all 1,856 recorded answers"
    }
  ],
  "json_url": "https://handbook.dnacalc.com/api/functions/FUNC.LN.json",
  "name": "LN",
  "notes": [],
  "schema": "efh.function-reference/v1",
  "section_order": [
    "what-it-does",
    "try-it",
    "quirks",
    "how-to-implement",
    "version-differences",
    "alternatives"
  ],
  "sections": {
    "alternatives": "\nUse [LOG](FUNC.LOG.md) for an explicit base, [LOG10](FUNC.LOG10.md) for base ten, and [IMLN](FUNC.IMLN.md) for a principal complex logarithm. [EXP](FUNC.EXP.md) converts a natural-log result back to a positive scale. For tiny financial rates, see the separate series in [PMT](FUNC.PMT.md) before constructing `1+rate`.\n\n\n",
    "how-to-implement": "\nThe current compatibility implementation evaluates an x87 instruction chain, rather than calling the language's `log`:\n\n1. Convert the accepted binary64 input exactly to an extended value with a 64-bit significand. Reject `x<=0` at the worksheet surface; return zero for `x=1`.\n2. Load the resident extended constant `ln(2)`. In the source model it is the exact binary value `0xB17217F7D1CF79AC * 2^-64`; do not replace it with a binary64 constant.\n3. Evaluate the modeled `FYL2X` instruction with that constant and `x`, meaning the instruction's approximation to `ln(2)*log2(x)`. Keep the instruction result extended until the final assignment.\n4. Store once to binary64 with round-to-nearest, ties-to-even. Apply the worksheet error and input policies outside this kernel.\n\nFor `x=1`, step 1 returns `0` without a transcendental call. For `x=8`, step 3 uses `log2(8)=3`; the result is near `3*ln(2)`, giving about `2.079441541679836` after storage.\n\nThis specifies the chain but leaves an instruction model to implement. The product has native x87 and software backends; the CPU's approximation and the software model are not justified by substituting an ideally rounded mathematical logarithm. The fingerprint work identifies constants within declared instruction models on measured discriminants. Private instruction internals, unmeasured input regions and agreement across CPUs remain outside that result.\n\n\n",
    "quirks": "\nThe documented domain is positive real numbers. The current calculation code returns `#NUM!` for zero or a negative value; Microsoft's opened function page does not specify that error code. Numeric conversion and elementwise array handling happen outside the logarithm kernel.\n\nIf you form `LN(1+x)` for a tiny `x`, the addition may already have rounded to `1`, so LN receives exactly one and returns zero. A more accurate logarithm cannot recover a perturbation lost before the call. PMT uses a separate small-rate series for this reason.\n\nRecorded answers differ between two machines for some identical inputs; their Excel builds and operating systems also differ. A host-native logarithm is therefore an implementation choice with an environment scope. The old battery also admits a subnormal directly to the kernel while a separate Excel input route flushed that value to zero: those are different input paths, not an established contradiction in LN itself.\n\n\n",
    "sources": "\n- [Microsoft: LN function](https://support.microsoft.com/en-us/excel/functions/ln-function), opened 6 November 2026; syntax, documented argument rules and errors.\n- [DnaCalc implementation](https://github.com/DnaCalc/DnaCalc/blob/da3ecc4fb19a3a5529708c311d0e8f05688ac165/crates/calc-func/src/ported/excel_numeric/x87_chains.rs); implementation steps and the limits identified in the text.\n- [Worksheet domain check](https://github.com/DnaCalc/DnaCalc/blob/da3ecc4fb19a3a5529708c311d0e8f05688ac165/crates/calc-func/src/ported/ln_fn.rs).\n- [Extended constants and software instruction model](https://github.com/DnaCalc/DnaCalc/blob/da3ecc4fb19a3a5529708c311d0e8f05688ac165/crates/calc-func/src/ported/excel_numeric/soft87.rs).\n- [Fingerprint scope and instruction-model limits](https://github.com/DnaCalc/DnaCalc/blob/da3ecc4fb19a3a5529708c311d0e8f05688ac165/docs/generated/numeric-fingerprints.md).\n\n",
    "try-it": "\n`=LN(8)` is about `2.079441541679836`. Dividing by `LN(2)` converts that exponent to base two: `=LN(8)/LN(2)` is about `3`. `=LN(1)` returns zero.\n\nFor a growth factor of `1.25`, `=LN(1.25)` gives a continuously compounded rate of about `0.2231435513142098`. These are rounded mathematical examples; they do not promise a particular last bit on every machine.\n\n\n",
    "version-differences": "The recorded environments below distinguish a reading from a same-input comparison. Counts describe captured inputs in each environment; overlapping captures and comparisons are not totals of unique worksheet calls.\n\n| Excel 16.0 build | Platform and CPU | Captured inputs |\n|---|---|---:|\n| 19929 | Windows, bitness not recorded, CPU not recorded | 45 |\n| 20131 | Windows, bitness not recorded, AMD Ryzen 7 4800H with Radeon Graphics | 349 |\n| 18429 | Windows, 64-bit, Intel(R) Core(TM) i7-9750H CPU @ 2.60GHz | 52 |\n| 20131 | Windows, 64-bit, AMD Ryzen 7 4800H with Radeon Graphics | 52 |\n| 20228 | Windows, 64-bit, CPU not recorded | 90 |\n| 20430 | Windows, 64-bit, CPU not recorded | 1,227 |\n\n- XC-LN-001: build 19929 versus build 20430; 2 same-input pairs, 0 differing answers. Compared axes: excel-build. Numeric answers were compared by their recorded binary64 bits; other answers by typed value.\n- XC-LN-002: build 20131 versus build 18429; 52 same-input pairs, 17 differing answers. Compared axes: cpu, excel-build, os. Numeric answers were compared by their recorded binary64 bits; other answers by typed value.\n\nThe differing machines changed Excel build and other recorded environment properties together. These observations do not isolate a build-only or CPU-only cause. The linked record retains each input, answer, and recheck status.\n\nA recorded example, XD-LN-001: the input `3.677168983357276e-222` has bits `0x11f544676cf1bf2f`. On 2026-07-03, build 20131 on AMD Ryzen 7 4800H with Radeon Graphics returned `-509.8717474865596` (`0xc07fddf2ad7e124d`). On the other machine, 2026-07-05, build 18429 on Intel(R) Core(TM) i7-9750H CPU @ 2.60GHz returned `-509.87174748655957` (`0xc07fddf2ad7e124c`). These answers differ by one unit in the last place. Each machine ran this probe once; no repeat is recorded. The input was placed in a cell through `Range.Value2` and its round trip was checked, rather than entered as a rounded decimal formula literal.\n\nAgreement on these compared inputs does not establish agreement on unmeasured inputs.\n\n[Recorded environments and comparison details](https://github.com/DnaCalc/ExcelFunctionsHandbook/blob/5dc75391aa5125ccc5abdb095da85950980d6fd8/content/evidence/environments/FUNC.LN.json).\n\nRetained controls from the indexed captures:\n\n| Build and recorded CPU | Captured call or arguments | Excel result |\n|---|---|---|\n| 19929, CPU not recorded | [`=LN(0.00878906250000000)`](https://github.com/DnaCalc/CalcFunc-Evidence/blob/4287ba192d2e3a7fd54671ea1cee1c34cb2e84e2/runs/W097-R-B-validation-cellref-module/comparisons/excel_sample_comparisons.jsonl.gz) | `-4.734247228263234` (`0xc012efde816246e6`) |\n| 20131, AMD Ryzen 7 4800H with Radeon Graphics | [`LN(1.5)`](https://github.com/DnaCalc/CalcFunc-Evidence/blob/4287ba192d2e3a7fd54671ea1cee1c34cb2e84e2/cache/oracle/build-20131/LN.jsonl.gz) | `0.4054651081081644` (`0x3fd9f323ecbf984c`) |\n| 20228, CPU not recorded | [`LN(0.93229377243277)`](https://github.com/DnaCalc/CalcFunc-Evidence/blob/4287ba192d2e3a7fd54671ea1cee1c34cb2e84e2/work/w109/G6-solvers/answers-pmt-general-ln-20260809.json.gz) | `-0.0701073074907403` (`0xbfb1f28d70e222ed`) |\n| 20430, CPU not recorded | [`LN(2)`](https://github.com/DnaCalc/CalcFunc-Evidence/blob/4287ba192d2e3a7fd54671ea1cee1c34cb2e84e2/cache/w111-extended-regenerated-20260929/answers-ln.json.gz) | `0.6931471805599453` (`0x3fe62e42fefa39ef`) |\n\nThese are earlier recorded answers, not new Excel runs or an additional cross-build comparison. The function JSON retains each source locator, exact argument bits where available, and input-route status. Call notation does not imply that captured binary64 values were entered as decimal formula literals.",
    "what-it-does": "\n`LN(number)` returns the natural logarithm of a positive number. It answers the question “what exponent of `e` gives this number?” Microsoft documents it as the inverse of EXP. Use it for multiplicative growth, log returns and transformations of positive data.\n\n\n"
  },
  "signature": {
    "display": "LN(number)",
    "parameters": [
      {
        "description": null,
        "name": "number",
        "optional": false,
        "repeats": false
      }
    ],
    "trailing_repeats": false
  },
  "sources": {
    "metadata": {
      "admission": {
        "label": "implemented",
        "reason": null
      },
      "arity": {
        "max": 1,
        "min": 1
      },
      "category": "Math and trigonometry functions",
      "classification": {
        "arg_preparation_profile": "ValuesOnlyPreAdapter",
        "coercion_lift_profile": "UnaryNumericScalarOrArrayElementwise",
        "determinism_class": "Deterministic",
        "error_collapse_profile": "None",
        "fec_dependency_profile": "None",
        "host_interaction_class": "None",
        "kernel_signature_class": "Custom",
        "rich_value_usage": "RichBlind",
        "surface_fec_dependency_profile": "RefOnly",
        "thread_safety_class": "SafePure",
        "volatility_class": "NonVolatile"
      },
      "descriptions": {
        "long": null,
        "short": "Natural logarithm",
        "short_source": "dna-calc-own"
      },
      "docs": {
        "english_description": "Returns the natural logarithm of a number",
        "microsoft_url": "https://support.microsoft.com/en-us/office/ln-function-81fe1ed7-dac9-4acd-ba1d-07a142c6118f"
      },
      "entry_kind": "built_in_function",
      "localized_family_names": null,
      "localized_names": [
        {
          "locale": "ar-SA",
          "name": "LN"
        },
        {
          "locale": "bg-BG",
          "name": "LN"
        },
        {
          "locale": "cs-CZ",
          "name": "LN"
        },
        {
          "locale": "da-DK",
          "name": "LN"
        },
        {
          "locale": "de-DE",
          "name": "LN"
        },
        {
          "locale": "el-GR",
          "name": "LN"
        },
        {
          "locale": "en-AU",
          "name": "LN"
        },
        {
          "locale": "en-GB",
          "name": "LN"
        },
        {
          "locale": "en-US",
          "name": "LN"
        },
        {
          "locale": "es-ES",
          "name": "LN"
        },
        {
          "locale": "et-EE",
          "name": "LN"
        },
        {
          "locale": "fi-FI",
          "name": "LUONNLOG"
        },
        {
          "locale": "fr-FR",
          "name": "LN"
        },
        {
          "locale": "he-IL",
          "name": "LN"
        },
        {
          "locale": "hr-HR",
          "name": "LN"
        },
        {
          "locale": "hu-HU",
          "name": "LN"
        },
        {
          "locale": "id-ID",
          "name": "LN"
        },
        {
          "locale": "it-IT",
          "name": "LN"
        },
        {
          "locale": "ja-JP",
          "name": "LN"
        },
        {
          "locale": "ko-KR",
          "name": "LN"
        },
        {
          "locale": "lt-LT",
          "name": "LN"
        },
        {
          "locale": "lv-LV",
          "name": "LN"
        },
        {
          "locale": "nb-NO",
          "name": "LN"
        },
        {
          "locale": "nl-NL",
          "name": "LN"
        },
        {
          "locale": "pl-PL",
          "name": "LN"
        },
        {
          "locale": "pt-BR",
          "name": "LN"
        },
        {
          "locale": "pt-PT",
          "name": "LN"
        },
        {
          "locale": "ro-RO",
          "name": "LN"
        },
        {
          "locale": "ru-RU",
          "name": "LN"
        },
        {
          "locale": "sk-SK",
          "name": "LN"
        },
        {
          "locale": "sl-SI",
          "name": "LN"
        },
        {
          "locale": "sr-Latn-RS",
          "name": "LN"
        },
        {
          "locale": "sv-SE",
          "name": "LN"
        },
        {
          "locale": "th-TH",
          "name": "LN"
        },
        {
          "locale": "tr-TR",
          "name": "LN"
        },
        {
          "locale": "uk-UA",
          "name": "LN"
        },
        {
          "locale": "vi-VN",
          "name": "LN"
        },
        {
          "locale": "zh-CN",
          "name": "LN"
        },
        {
          "locale": "zh-HK",
          "name": "LN"
        },
        {
          "locale": "zh-TW",
          "name": "LN"
        }
      ],
      "signature": {
        "display": "LN(number)",
        "parameters": [
          {
            "description": null,
            "name": "number",
            "optional": false,
            "repeats": false
          }
        ],
        "trailing_repeats": false
      },
      "surface_name": "LN",
      "version_marker": null,
      "xlcall": {
        "code": "22",
        "symbol": "xlfLn"
      }
    },
    "microsoft": "https://support.microsoft.com/en-us/office/ln-function-81fe1ed7-dac9-4acd-ba1d-07a142c6118f"
  },
  "try_it": {
    "formula": "=LN(8)"
  },
  "url": "https://handbook.dnacalc.com/functions/LN.html",
  "variants": [
    {
      "code": "https://github.com/DnaCalc/DnaCalc/blob/9e1884369a678158dd82d3d74188daf986995e87/crates/calc-func/src/ported/ln_fn.rs#L3-L9",
      "difference": "On 17 recorded inputs this environment's answer is 1 ULP from the answer recorded in 16.0 build 20131, AMD Zen 2 (Windows, 64-bit). CPU, Excel build and operating system all differ between the two machines, so the cause is not isolated.",
      "error_bound": null,
      "evaluated_on": "Intel Core Processor (Haswell, no TSX)",
      "evidence": [
        {
          "commit": "1b00c7bdb28624b0f2c3785586e076414d9d92bb",
          "locator": "XD-LN-001,XD-LN-002,XD-LN-003,XD-LN-004,XD-LN-005,XD-LN-006,XD-LN-007,XD-LN-008,XD-LN-009,XD-LN-010,XD-LN-011,XD-LN-012,XD-LN-013,XD-LN-014,XD-LN-015,XD-LN-016,XD-LN-017",
          "note": "not rechecked",
          "path": "content/evidence/measurements/excel-exp-ln-cross-cpu-2026-07/ExcelExpData_GenuineIntel_20260705-191433.json",
          "repository": "ExcelFunctionsHandbook"
        }
      ],
      "key": {
        "cpu": "Intel Coffee Lake (Windows, 64-bit)",
        "env_id": "win-x64-16.0.18429-intel-coffee-lake",
        "excel_build_range": "16.0 build 18429"
      },
      "kind": "environment",
      "name": "LN on Excel 16.0 build 18429, Intel Coffee Lake (Windows, 64-bit)",
      "onecalc_udf": null,
      "state": "matches",
      "state_summary": "Run on Intel Core Processor (Haswell, no TSX): gives this answer on 17 of 17 of these inputs."
    },
    {
      "code": "https://github.com/DnaCalc/DnaCalc/blob/9e1884369a678158dd82d3d74188daf986995e87/crates/calc-func/src/ported/ln_fn.rs#L3-L9",
      "difference": "On 17 recorded inputs this environment's answer is 1 ULP from the answer recorded in 16.0 build 18429, Intel Coffee Lake (Windows, 64-bit). CPU, Excel build and operating system all differ between the two machines, so the cause is not isolated.",
      "error_bound": null,
      "evaluated_on": "Intel Core Processor (Haswell, no TSX)",
      "evidence": [
        {
          "commit": "1b00c7bdb28624b0f2c3785586e076414d9d92bb",
          "locator": "XD-LN-001,XD-LN-002,XD-LN-003,XD-LN-004,XD-LN-005,XD-LN-006,XD-LN-007,XD-LN-008,XD-LN-009,XD-LN-010,XD-LN-011,XD-LN-012,XD-LN-013,XD-LN-014,XD-LN-015,XD-LN-016,XD-LN-017",
          "note": "not rechecked",
          "path": "content/evidence/measurements/excel-exp-ln-cross-cpu-2026-07/ExcelExpData_AuthenticAMD_20260703-223049.json",
          "repository": "ExcelFunctionsHandbook"
        }
      ],
      "key": {
        "cpu": "AMD Zen 2 (Windows, 64-bit)",
        "env_id": "win-x64-16.0.20131-amd-zen2",
        "excel_build_range": "16.0 build 20131"
      },
      "kind": "environment",
      "name": "LN on Excel 16.0 build 20131, AMD Zen 2 (Windows, 64-bit)",
      "onecalc_udf": null,
      "state": "not-run",
      "state_summary": "Not run on this CPU. On x86_64 the kernel executes the CPU's own x87 instructions, so its answer follows the machine; on Intel Core Processor (Haswell, no TSX) it gave this answer on 0 of 17."
    }
  ],
  "versions": [
    {
      "behaviour": "45 captured inputs are indexed for this environment. Capture dates are not recorded. This is a reading count, not a comparison with another build. Retained control =LN(0.00878906250000000) returned -4.734247228263234 (0xc012efde816246e6). The selected archive row does not record its input plumbing; no input route is inferred.",
      "excel_build": "16.0 build 19929",
      "observations": [
        {
          "call": "=LN(0.00878906250000000)",
          "excel": {
            "bits": "0xc012efde816246e6",
            "display": "-4.734247228263234",
            "kind": "number"
          },
          "input_route": "not-recorded",
          "inputs": [],
          "recorded_in": "Excel 16.0 build 19929, Windows, bitness not recorded, CPU not recorded.",
          "source": {
            "commit": "4287ba192d2e3a7fd54671ea1cee1c34cb2e84e2",
            "locator": "BSE-000000119",
            "path": "runs/W097-R-B-validation-cellref-module/comparisons/excel_sample_comparisons.jsonl.gz",
            "repository": "CalcFunc-Evidence"
          }
        }
      ],
      "platform": "Windows, bitness not recorded, CPU not recorded",
      "sources": [
        "https://github.com/DnaCalc/ExcelFunctionsHandbook/blob/5dc75391aa5125ccc5abdb095da85950980d6fd8/content/evidence/environments/FUNC.LN.json",
        "https://github.com/DnaCalc/CalcFunc-Evidence/blob/4287ba192d2e3a7fd54671ea1cee1c34cb2e84e2/runs/W097-R-B-validation-cellref-module/comparisons/excel_sample_comparisons.jsonl.gz"
      ]
    },
    {
      "behaviour": "349 captured inputs are indexed for this environment. Capture dates: 2026-07-21 to 2026-07-23. This is a reading count, not a comparison with another build. Retained control LN(1.5) returned 0.4054651081081644 (0x3fd9f323ecbf984c). The selected archive row does not record its input plumbing; no input route is inferred.",
      "excel_build": "16.0 build 20131",
      "observations": [
        {
          "call": "LN(1.5)",
          "excel": {
            "bits": "0x3fd9f323ecbf984c",
            "display": "0.4054651081081644",
            "kind": "number"
          },
          "input_route": "not-recorded",
          "inputs": [
            {
              "name": "argument1",
              "value": {
                "bits": "0x3ff8000000000000",
                "display": "1.5",
                "kind": "number"
              }
            }
          ],
          "recorded_in": "Excel 16.0 build 20131, Windows, bitness not recorded, AMD Ryzen 7 4800H with Radeon Graphics.",
          "source": {
            "commit": "4287ba192d2e3a7fd54671ea1cee1c34cb2e84e2",
            "locator": "LN|0x3ff8000000000000",
            "path": "cache/oracle/build-20131/LN.jsonl.gz",
            "repository": "CalcFunc-Evidence"
          }
        }
      ],
      "platform": "Windows, bitness not recorded, AMD Ryzen 7 4800H with Radeon Graphics",
      "sources": [
        "https://github.com/DnaCalc/ExcelFunctionsHandbook/blob/5dc75391aa5125ccc5abdb095da85950980d6fd8/content/evidence/environments/FUNC.LN.json",
        "https://github.com/DnaCalc/CalcFunc-Evidence/blob/4287ba192d2e3a7fd54671ea1cee1c34cb2e84e2/cache/oracle/build-20131/LN.jsonl.gz"
      ]
    },
    {
      "behaviour": "52 captured inputs are indexed for this environment. Capture dates: 2026-07-05 to 2026-07-05. This is a reading count, not a comparison with another build. The indexed same-input control LN(3.677168983357276e-222) returned -509.87174748655957 (0xc07fddf2ad7e124c); XD-LN-001 changed CPU, Excel build and OS together and remains not-rechecked.",
      "excel_build": "16.0 build 18429",
      "observations": [
        {
          "call": "LN(3.677168983357276e-222)",
          "comparison": "XD-LN-001",
          "excel": {
            "bits": "0xc07fddf2ad7e124c",
            "display": "-509.87174748655957",
            "kind": "number"
          },
          "input_route": "cell-value2",
          "inputs": [
            {
              "name": "argument1",
              "value": {
                "bits": "0x11f544676cf1bf2f",
                "display": "3.677168983357276e-222",
                "kind": "number"
              }
            }
          ],
          "recheck_status": "not-rechecked",
          "recorded_in": "Excel 16.0 build 18429, Windows, 64-bit, Intel(R) Core(TM) i7-9750H CPU @ 2.60GHz, observed 2026-07-05.",
          "source_record": "https://github.com/DnaCalc/ExcelFunctionsHandbook/blob/5dc75391aa5125ccc5abdb095da85950980d6fd8/content/evidence/environments/FUNC.LN.json"
        }
      ],
      "platform": "Windows, 64-bit, Intel(R) Core(TM) i7-9750H CPU @ 2.60GHz",
      "sources": [
        "https://github.com/DnaCalc/ExcelFunctionsHandbook/blob/5dc75391aa5125ccc5abdb095da85950980d6fd8/content/evidence/environments/FUNC.LN.json"
      ]
    },
    {
      "behaviour": "52 captured inputs are indexed for this environment. Capture dates: 2026-07-03 to 2026-07-03. This is a reading count, not a comparison with another build. The indexed same-input control LN(3.677168983357276e-222) returned -509.8717474865596 (0xc07fddf2ad7e124d); XD-LN-001 changed CPU, Excel build and OS together and remains not-rechecked.",
      "excel_build": "16.0 build 20131",
      "observations": [
        {
          "call": "LN(3.677168983357276e-222)",
          "comparison": "XD-LN-001",
          "excel": {
            "bits": "0xc07fddf2ad7e124d",
            "display": "-509.8717474865596",
            "kind": "number"
          },
          "input_route": "cell-value2",
          "inputs": [
            {
              "name": "argument1",
              "value": {
                "bits": "0x11f544676cf1bf2f",
                "display": "3.677168983357276e-222",
                "kind": "number"
              }
            }
          ],
          "recheck_status": "not-rechecked",
          "recorded_in": "Excel 16.0 build 20131, Windows, 64-bit, AMD Ryzen 7 4800H with Radeon Graphics, observed 2026-07-03.",
          "source_record": "https://github.com/DnaCalc/ExcelFunctionsHandbook/blob/5dc75391aa5125ccc5abdb095da85950980d6fd8/content/evidence/environments/FUNC.LN.json"
        }
      ],
      "platform": "Windows, 64-bit, AMD Ryzen 7 4800H with Radeon Graphics",
      "sources": [
        "https://github.com/DnaCalc/ExcelFunctionsHandbook/blob/5dc75391aa5125ccc5abdb095da85950980d6fd8/content/evidence/environments/FUNC.LN.json"
      ]
    },
    {
      "behaviour": "90 captured inputs are indexed for this environment. Capture dates: 2026-08-09 to 2026-08-09. This is a reading count, not a comparison with another build. Retained control LN(0.93229377243277) returned -0.0701073074907403 (0xbfb1f28d70e222ed). The capture specifies exact-double bulk Value2 cell input.",
      "excel_build": "16.0 build 20228",
      "observations": [
        {
          "call": "LN(0.93229377243277)",
          "excel": {
            "bits": "0xbfb1f28d70e222ed",
            "display": "-0.0701073074907403",
            "kind": "number"
          },
          "input_route": "cell-value2",
          "inputs": [
            {
              "name": "argument1",
              "value": {
                "bits": "0x3fedd559bfdb9f72",
                "display": "0.93229377243277",
                "kind": "number"
              }
            }
          ],
          "recorded_in": "Excel 16.0 build 20228, Windows, 64-bit, CPU not recorded.",
          "source": {
            "commit": "4287ba192d2e3a7fd54671ea1cee1c34cb2e84e2",
            "locator": "pmt-gen-ln-0006",
            "path": "work/w109/G6-solvers/answers-pmt-general-ln-20260809.json.gz",
            "repository": "CalcFunc-Evidence"
          }
        }
      ],
      "platform": "Windows, 64-bit, CPU not recorded",
      "sources": [
        "https://github.com/DnaCalc/ExcelFunctionsHandbook/blob/5dc75391aa5125ccc5abdb095da85950980d6fd8/content/evidence/environments/FUNC.LN.json",
        "https://github.com/DnaCalc/CalcFunc-Evidence/blob/4287ba192d2e3a7fd54671ea1cee1c34cb2e84e2/work/w109/G6-solvers/answers-pmt-general-ln-20260809.json.gz"
      ]
    },
    {
      "behaviour": "1,227 captured inputs are indexed for this environment. Capture dates: 2026-09-29 to 2026-09-29. This is a reading count, not a comparison with another build. Retained control LN(2) returned 0.6931471805599453 (0x3fe62e42fefa39ef). The capture specifies exact-double bulk Value2 cell input.",
      "excel_build": "16.0 build 20430",
      "observations": [
        {
          "call": "LN(2)",
          "excel": {
            "bits": "0x3fe62e42fefa39ef",
            "display": "0.6931471805599453",
            "kind": "number"
          },
          "input_route": "cell-value2",
          "inputs": [
            {
              "name": "argument1",
              "value": {
                "bits": "0x4000000000000000",
                "display": "2",
                "kind": "number"
              }
            }
          ],
          "recorded_in": "Excel 16.0 build 20430, Windows, 64-bit, CPU not recorded.",
          "source": {
            "commit": "4287ba192d2e3a7fd54671ea1cee1c34cb2e84e2",
            "locator": "w111extended-2026092903-LN-00011",
            "path": "cache/w111-extended-regenerated-20260929/answers-ln.json.gz",
            "repository": "CalcFunc-Evidence"
          }
        }
      ],
      "platform": "Windows, 64-bit, CPU not recorded",
      "sources": [
        "https://github.com/DnaCalc/ExcelFunctionsHandbook/blob/5dc75391aa5125ccc5abdb095da85950980d6fd8/content/evidence/environments/FUNC.LN.json",
        "https://github.com/DnaCalc/CalcFunc-Evidence/blob/4287ba192d2e3a7fd54671ea1cee1c34cb2e84e2/cache/w111-extended-regenerated-20260929/answers-ln.json.gz"
      ]
    }
  ]
}