所有与schemata相关的东西的python包
schematax的Python项目详细描述
schematax是一个简单的python包,用于执行与schemata相关的所有操作。
模式是使用一个额外的符号,“*”(称为通配符)生成的单词。 例如,二进制AplHappet“1*0”上的模式表示 串。{'100','110'}。
架构具有属性。例如,对于模式s,s的顺序是 中不是通配符的符号数(称为固定符号)。 s的定义长度是第一个和最后一个固定符号之间的距离。
给定一组相同长度的单词s,s的示意图完成 返回构成s中单词子集的所有架构。 更重要的是给出了schemata的部分顺序,s的schematic完成 形成一个Complete Lattice。
链接
安装
这个包在python 2.7下运行,使用pip安装:
$ pip install schematax
这也将安装来自pypi as的graphviz包 必需的依赖项。
important:绘制原理图晶格使用Graphviz software。确保 已安装,dot可执行文件位于系统路径上。
快速启动
文件example.py很好地概述了如何使用包。
基本架构操作:
>>>importschematax>>>s=schematax.schema('10*1')#makes a schema>>>s10*1>>>s.get_order()3>>>s.get_defining_length()3>>>s2=schematax.schema('1**1')#makes another schema>>>s<=s2True>>>s<s2True>>>s==s2False>>>schematax.meet(s,s2)10*1>>>schematax.join(s,s2)1**1>>>s3=schematax.schema('00*1')>>>schematax.supremum([s,s2,s3])***1>>>schematax.infimum([s,s2,s3])e#e stands for the empty schema
原理图完成和绘制原理图格:
>>>importschematax>>>xs=['111','011','001']>>>ss=schematax.complete(xs)#performing schematic completion>>>ss[111,011,001,*11,**1,0*1,e]#e stands for the empty schema>>>schematax.draw(ss,'my_lattice')#draws the schematic lattice of ss and saves it as my_lattice.pdf
此处生成的图像:
进一步阅读
许可证
schemata分布在MIT license下。