Helloooooooooooo !! Petit "rapport d'utilisation" sur les Posets :-D
Je viens de passer 30 minutes à chercher le pourquoi de ceci : sage: inclusionwise_mininals(d) --------------------------------------------------------------------------- ValueError Traceback (most recent call last) /home/ncohen/<ipython console> in <module>() /home/ncohen/ramsey.py in inclusionwise_mininals(l, induced) 334 ll = map(lambda x : Graph(x, loops = False, multiedges = False), ll) 335 return ll 336 337 def inclusionwise_mininals(l, induced = False): --> 338 return Poset(l, lambda (x,y) : (x != y and (x.subgraph_search(y, induced = induced) != None))).minimal_elements() /home/ncohen/.Sage/local/lib/python2.7/site-packages/sage/combinat/posets/posets.pyc in Poset(data, element_labels, cover_relations, linear_extension, category, facade, key) 387 lin_ext = D.topological_sort() 388 except: --> 389 raise ValueError, "Hasse diagram contains cycles." 390 391 # Relabel using the linear_extension. ValueError: Hasse diagram contains cycles. J'appelais bien le constructeur Poser avec en argument une liste d'elements et une fonction de comparaison. J'appelais Poset(liste, fonction), ca me répondait qu'il y avait des cycles, j'ai tout testé 40 fois et je n'y comprenais rien, j'ai refait le calcul a la main avec des graphes qui me répondaient que "non, il n'y avait pas de cycles". Il se révèle, comme le disait la doc, que j'aurais du donner mes deux arguments dans un tuple, et que Poset( ( liste, fonction ) ) renvoie exactement ce que je veux. Comme c'est plutôt votre terrain de jeu, je vous laisse juge de si c'est un vrai problème ou si c'est mieux comme ca et que j'ai juste 2 bras gauches, ce que j'admets d'avance. Mais perso j'inverserais les parametres optionnels "cover_relation" et "element_labels" dans la liste des paramètres, et je renverrais une exception dans le cas ou un abruti dans mon genre donnerait une valeur à cover_relation qui serait autre chose qu'un boolean :-D J'espère que ca roxxe au Canada !!!! Nathann -- You received this message because you are subscribed to the Google Groups "sage-combinat-devel" group. To post to this group, send email to sage-combinat-devel@googlegroups.com. To unsubscribe from this group, send email to sage-combinat-devel+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/sage-combinat-devel?hl=en.