mirror of
https://github.com/UpsilonNumworks/Upsilon.git
synced 2026-05-09 08:25:44 +02:00
[GH-ISSUE #199] Simplification logarithme #76
Labels
No labels
bug
duplicate
easy
enhancement
enhancement
fixed
fixed
good first issue
hard
invalid
pull-request
wontfix
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
starred/Upsilon#76
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @Oreig403 on GitHub (Apr 4, 2022).
Original GitHub issue: https://github.com/UpsilonNumworks/Upsilon/issues/199
Describe the bug
Le problème est la simplification des logarithme décimaux.
log(x^n) devrait renvoyer n×log(x) etc
To Reproduce
Aller dans calcul
Taper les fonctions logarithme de par exemple 1/x
Expected behavior

Les simplifications attendues sont celles énoncés dans les règles de calcul suivante:
Sachant que log 10^x marche déjà
Device (please complete the following information):
Tout les modèle s
@fmOOmf commented on GitHub (Apr 4, 2022):
Bonjour
Bien vu !
Par contre, il faut bien viser sur les simplifications à implémenter.
log(x^n) = nlog(x)me semble effectivement souhaitable.log(xy) = log(x)+log(y)ou pourlog(x/y) = log(x)-log(y), la discussion est ouverte.Tout dépend des situations, et je ne sais pas s'il faut chercher à transformer systématiquement une expression en une autre : on aura quelquefois avantage à faire :
log(x/y) => log(x)-log(y),mais d'autres fois, il nous faudra plutôt faire le chemin inverse :
log(x)-log(y) => log(x/y)Exemple :
ln(10^x) : je m'attendrais à obtenir xln(10), mais comme 10=2*5, en vertu de la propriété ln(xy)=ln(x)+ln(y) que tu cites, Upsilon simplifie ln(10) en ln(2) + ln(5) :
... et donc on obtient ln(10^x) => xln(2) +xln(5). Est-ce vraiment plus simplement écrit ?
En tout cas, 100% d'accord avec la suggestion de Oreig403 de simplifier
log(x^n) = n*log(x)... et
ln(x^n) = n*ln(x)de la même façon !@LukasMFR commented on GitHub (Apr 4, 2022):
C'est un peu comment ln(e^x) qui renvoie bien x mais pas e^ln(x)
@fmOOmf commented on GitHub (Apr 5, 2022):
@LukasAppleFan
Et en plus je pense que
e^ln(x)=xetln(e^x)=xsont vrais aussi dans le cas des complexes.Cela doit simplifier le codage.
Post séparé pour ne pas partir en branche ?
Cela permettra de maintenir ce ticket dédié à la problématique de
log(x^n) = n*log(x)etln(x^n) = n*ln(x)@Oreig403 commented on GitHub (Apr 5, 2022):
Peut être certaine simplifications pourraient être modifiables
@fmOOmf commented on GitHub (Apr 5, 2022):
Bonne idée.
Avec quelques expressions (regroupe, isole xx, met xx en facteur, développe, factorise, simplifie ...) .
Mais est-ce que cela ne reviendrait pas à refaire KhiCAS ?
@Lauryy06 commented on GitHub (Apr 24, 2022):
Le problème est que ces expressions ne sont vraies que dans certains cas (n réel, x positif, etc...). La simplification se fait déjà pour les entiers (par exemple log(5^4) devient 4 x log(5).