# physics/naturallogarithm-to-ln

Collapse a bare natural logarithm helper to the standard ln operator.

https://texform.dev/rules/physics/naturallogarithm-to-ln

## Metadata

| Field | Value |
| --- | --- |
| Key | physics/naturallogarithm-to-ln |
| Level | authoring |
| Fidelity | render |
| Enabled by packages | physics |
| Profiles | Authoring, Faithful, Corpus, Equiv |

## Rewrite patterns

### bare

From:

```latex
\naturallogarithm
```

To:

```latex
\ln
```

## Examples

Examples show the rule in isolation, not a complete normalization profile.

### naturallogarithm entropy

Before:

```latex
S=k_B\naturallogarithm W
```

After this rule:

```latex
S=k_B\ln W
```

Packages: base, physics.

Rendering verified with the declared packages.

## Triggers

- [\\naturallogarithm](https://texform.dev/latex/commands/naturallogarithm)

## Produces

- [\\ln](https://texform.dev/latex/commands/ln)

## Touches

- [\\naturallogarithm](https://texform.dev/latex/commands/naturallogarithm)

## Downstream

- [physics/named-fn-paren-expand](https://texform.dev/rules/physics/named-fn-paren-expand): Expand physics power and auto-sized parenthesis arguments of standard named functions.

## Same family

- [ams/operatorname-to-named-function](https://texform.dev/rules/ams/operatorname-to-named-function): Rewrite plain operatorname arguments to equivalent base named-function or named-operator commands.
- [ams/idotsint-expand](https://texform.dev/rules/ams/idotsint-expand): Expand idotsint to explicit repeated integral surfaces.
- [base/limits-drop](https://texform.dev/rules/base/limits-drop): Drop explicit limits from an audited operator while preserving attached scripts.
- [base/nolimits-drop](https://texform.dev/rules/base/nolimits-drop): Drop explicit nolimits from an audited operator while preserving attached scripts.
- [physics/cosine-to-cos](https://texform.dev/rules/physics/cosine-to-cos): Collapse a bare cosine helper to the standard cos operator.
- [physics/probability-to-pr](https://texform.dev/rules/physics/probability-to-pr): Collapse a bare Probability helper to the standard Pr operator.
- [physics/sine-to-sin](https://texform.dev/rules/physics/sine-to-sin): Collapse a bare sine helper to the standard sin operator.
- [physics/trace-capital-to-Tr](https://texform.dev/rules/physics/trace-capital-to-Tr): Collapse a bare Trace with no following argument group to the local Tr anchor.
- [physics/trace-to-tr](https://texform.dev/rules/physics/trace-to-tr): Collapse a bare trace with no following argument group to the local tr anchor.
- [physics/named-fn-paren-expand](https://texform.dev/rules/physics/named-fn-paren-expand): Expand physics power and auto-sized parenthesis arguments of standard named functions.
- [physics/named-fn-to-operatorname](https://texform.dev/rules/physics/named-fn-to-operatorname): Rewrite physics-only named functions to operatorname and expand their auto-sized arguments.
- [physics/physics-operator-fence-expand](https://texform.dev/rules/physics/physics-operator-fence-expand): Expand the physics auto-sized argument of exp, det, and Pr into an explicit fence.
- [physics/rank-to-operatorname-rank](https://texform.dev/rules/physics/rank-to-operatorname-rank): Rewrite rank to an explicit operatorname form instead of a package-local alias.

## Notes

In LaTeX physics.sty 1.3, \naturallogarithm is the original \ln saved with \let, a plain operator that grabs nothing, while the redefined \ln grabs a following [...] power and (...) argument. The rule renames only a bare \naturallogarithm, one not followed by (, [, or a brace group; a \naturallogarithm that carries scripts is bare. The renamed command gets the empty argument slots of the active \ln record. In faithful, named-fn-to-operatorname rewrites the skipped branches to \operatorname{ln} and keeps the delimiters literal. Touches-only convergence: every Applied removes one bare \naturallogarithm; non-matching nodes return Skipped. The produced command and canonical reference use the physics record, which overrides the base definition whenever this rule is enabled.

## Disable this rule

```python
TransformEngine(profile="corpus", disable_rules=["physics/naturallogarithm-to-ln"])
```

```javascript
new TransformEngine({ profile: 'corpus', disableRules: ['physics/naturallogarithm-to-ln'] })
```

[Open in Playground](https://play.texform.dev/?input=S%3Dk_B%5Cnaturallogarithm+W)
