diff --git a/Rules/Languages/de/SharedRules/general.yaml b/Rules/Languages/de/SharedRules/general.yaml
index 4c0f252fb..3098d76ac 100644
--- a/Rules/Languages/de/SharedRules/general.yaml
+++ b/Rules/Languages/de/SharedRules/general.yaml
@@ -460,9 +460,9 @@
else: [T: "kovarianz"] # phrase('covariance' function)
-
- name: log # handle both log and ln (if in an mrow, 'intents' are used)
+ name: log # handle log, principal Log, and ln (if in an mrow, 'intents' are used)
tag: mi
- match: ".='log' or .='ln'"
+ match: ".='log' or .='Log' or .='ln'"
replace:
- bookmark: "@id"
- test:
@@ -472,6 +472,8 @@
- test:
- if: ".= 'log'"
then: [T: "log"] # phrase(the 'log' function is used in mathematics)
+ - else_if: ".= 'Log'"
+ then: [T: "hauptwert des logarithmus"]
- else_if: "$Verbosity='Terse'"
then: [spell: "'ln'"]
else: [T: "natürliche logarithmus"] # phrase(the 'natural log' function is used in mathematics)
diff --git a/tests/Languages/de/ClearSpeak/functions.rs b/tests/Languages/de/ClearSpeak/functions.rs
index 6cb30e259..90217658e 100644
--- a/tests/Languages/de/ClearSpeak/functions.rs
+++ b/tests/Languages/de/ClearSpeak/functions.rs
@@ -106,6 +106,15 @@ fn simple_log() -> Result<()> {
}
+#[test]
+fn principal_value_log() -> Result<()> {
+ // Uppercase Log denotes the principal-value logarithm.
+ let expr = "";
+ test("de", "ClearSpeak", expr, "der hauptwert des logarithmus, von x")?;
+ test("de", "SimpleSpeak", expr, "der hauptwert des logarithmus, von x")?;
+ Ok(())
+}
+
#[test]
fn normal_log() -> Result<()> {
let expr = "";