diff --git a/sae_s1_02_etu.py b/sae_s1_02_etu.py
index 23f8aa95b2e0e1a7eea922762eafb5f28f0f4504..86165b7b42210bae800cfacf833f3e3bcfea511c 100644
--- a/sae_s1_02_etu.py
+++ b/sae_s1_02_etu.py
@@ -58,8 +58,9 @@ def evaluer_clause(clause,list_var):
 
     #cree un dictionnaire qui assigne
     #chaque variable a sa valuation en se basant sur liste_var
-    for i in range(len(list_var)):
-        dict_valuations[i+1]=list_var[i]
+    for index,i in enumerate(list_var):
+        dict_valuations[index+1]=i
+
     #cree une liste qui equivaut a clause mais
     #avec ses variables remplacées par leurs valuations
     for i in clause:
@@ -80,8 +81,9 @@ def evaluer_clause(clause,list_var):
 
     #Sinon retourne un bool correspond a la presence d'un True
     return any(liste_valuations)
-    
-"""clause1=[1,-2,3,-4]
+
+"""    
+clause1=[1,-2,3,-4]
 list_var1=[True,True,False,None]
 test("essai cas 1 evaluer_clause : ",evaluer_clause(clause1,list_var1),True)
 clause2=[1,-2,3,-4]
@@ -130,19 +132,15 @@ def determine_valuations(list_var):
     '''Arguments : une liste de booléens informant de valeurs logiques connues (ou None dans le cas contraire) pour un ensemble de variables
     Renvoie : La liste de toutes les valuations (sans doublon) envisageables pour les variables de list_var
 '''
-    def recur(list_var):
-        for l in list_var: #chaque sous liste
-            for i, v in enumerate(l):
-                if v is None: #crée deux liste, une avec false à la palce de None et une avec true à la place de None
-                    cpy1, cpy2 = l[:], l[:] #copie les liste
-                    cpy1[i] = False #remplace none par false
-                    cpy2[i] = True #remplace none par true
-                    list_var.append(cpy1) #ajoute la liste dans list_var
-                    list_var.append(cpy2) #ajoute la liste dans list_var
-                    list_var.pop(0) #dégage la liste avec le None modifé
-                    return recur(list_var) #recommence avec chaque None de la liste
-        return list_var
-    return recur([list_var])
+
+    liste_clean=[list_var]
+    for i in liste_clean:
+        for index,j in enumerate(i):
+            if j==None:
+                liste_temp=copy.deepcopy(i)
+                i[index],liste_temp[index]=True,False
+                liste_clean.append(liste_temp)
+    return liste_clean
 
 """
 list_var1=[True,None,False,None]
@@ -214,24 +212,15 @@ def init_formule_simpl_for(formule_init,list_var):
     '''
     Renvoie : La formule simplifiée en tenant compte des valeurs logiques renseignées dans list_var
 '''
-    for i in list_var:
-        if not evaluer_clause(i,list_var):
-            return []
-        if list_var[i]:
-            formule_init=enlever_litt_for(formule_init, i+1)
-        elif list_var[i]==False:
-            formule_init=enlever_litt_for(formule_init, -i+1)
-    return formule_init
-    # list_simple=[]
-    # for l in formule_init:
-    #     if evaluer_clause(l, list_var) == None:
-    #         list_simple.append(l)
-    #         for i in l:
-    #             if list_var[abs(i) - 1] != None:
-    #                 l.remove(i)
-    # return list_simple
-
+    formule_out=copy.deepcopy(formule_init)
+    for index,i in enumerate(list_var):
+        if i:
+            formule_out = enlever_litt_for(formule_out,index+1)
+        elif i==False:
+            formule_out = enlever_litt_for(formule_out,-(index+1))
+    return formule_out
 
+"""
 list_var_for1=[False, None, None, False, None]
 for1=[[-5, -3, 4, -1], [3], [5, -2], [-2, 1, -4], [1, -3]]
 cor_for1=[[3], [5, -2], [-3]]
@@ -246,7 +235,7 @@ list_var_for3= [None, None, None, True, None]
 for3= [[-5, -1], [-1, -3], [4], [-4, 1], [-2, -1, 3]]
 cor_for3=[[-5, -1], [-1, -3], [1], [-2, -1, 3]]
 test_for('test3_init_formule_simpl_for : ',init_formule_simpl_for(for3,list_var_for3),cor_for3)
-
+"""
 
 def retablir_for(formule_init,list_chgmts):
     '''Arguments : une formule initiale et une liste de changements à apporter sur un ensemble de variables (chaque changement étant une liste [i,bool] avec i l'index qu'occupe la variable dans list_var et bool la valeur logique qui doit lui être assignée)