Études-Mathématique/Calcul sur valeur dupliquée et Lazi
Contents
Question
Pour pouvoir faire des déductions sur les formules Lazi il sera nécessaire de les calculer. Hors pour que les calculs ne soient pas monstrueusement lourds il est nécessaire de passer par les noms définis et les fonctions. La question est : est-t-il possible de ne pas avoir à dupliquer les calculs ?
Étude
Cause de duplication
Les noms définis
Un nom défini peut être utilisé dans plusieurs endroit. Si sa valeur doit être calculé, en utilisant la technique de remplacer le nom par sa valeur on duplique les calculs.
distribute et fonctions
Les règles de calcul sur distribute et sur les fonctions duplique les valeurs et donc les calculs dessus.
Solution par variable
Cette solution utilise le contexte pour stocker les valeurs. L'idée est de créer des variables pour les valeurs pouvant être dupliquées.
Il est inutile de créer une variable pour une valeur ne pouvant être calculée, or seuls les "apply" peuvent l'être. Donc on ne cré des variables que pour les apply partagés.
Quand calculer la valeur de la variable : Quand la variable doit être calculée.
Quand remplacer la variable : Quand la variable vient d'être calculée. Il suffit que le résultat du calcul de la variable soit le résultat du calcul de la valeur de la variable.
Remarquons que l'on peut appliquer les mêmes règles aux noms définis, si on accepte de changer leur valeur.
Remarquons que ce système permet de se passer du système var-places car il n'y a plus de grosses expressions comme argument de fonctions car la grosse expression est dissimulée sous un nom défini.
Partager le calcul des sous-expressions
Quand une variable est calculée on la remplace par sa valeur. Mais on peut être amené à calculer des sous-parties, si on ne faisait que remplacer par sa valeur alors on perdrait le partage de calcul sur les sous-parties. Pour ne pas perdre le partage on peut créer d'autres variables pour la sous-partie "argument" (celle "fonction" est déjà calculée au maximum).
Donc on crée une variable si le résultat du calcul est de la forme f (a b)
et uniquement pour a b
.
Calcul limité
Si on a un système de raccourcis alors on peut avoir besoin de faire des calculs limités pour aboutir à certaines formes d'expressions, comment concilier la limitation de calcul et les variables ?
On utilise le même système, mais avec la fonction de calcul limité.
Réponse
Cela est possible, voir l'étude.