test cases for replacement and replacedBy
This commit is contained in:
parent
2111d56e9c
commit
56db09039e
39 changed files with 3323 additions and 2235 deletions
|
|
@ -1,6 +1,6 @@
|
|||
<?xml version='1.0' encoding='UTF-8' standalone='no'?>
|
||||
<sbml xmlns="http://www.sbml.org/sbml/level3/version1/core" xmlns:layout="http://www.sbml.org/sbml/level3/version1/layout/version1" level="3" arrays:required="true" fbc:required="false" xmlns:comp="http://www.sbml.org/sbml/level3/version1/comp/version1" xmlns:fbc="http://www.sbml.org/sbml/level3/version1/fbc/version1" comp:required="true" xmlns:arrays="http://www.sbml.org/sbml/level3/version1/arrays/version1" version="1" layout:required="false">
|
||||
<model id="GeneticToggle" name="Created by libsbml flatten routine" metaid="iBioSim1">
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<sbml xmlns:comp="http://www.sbml.org/sbml/level3/version1/comp/version1" xmlns:arrays="http://www.sbml.org/sbml/level3/version1/arrays/version1" xmlns:layout="http://www.sbml.org/sbml/level3/version1/layout/version1" xmlns="http://www.sbml.org/sbml/level3/version2/core" xmlns:fbc="http://www.sbml.org/sbml/level3/version1/fbc/version2" level="3" version="2" comp:required="true" fbc:required="false" arrays:required="true" layout:required="false">
|
||||
<model metaid="iBioSim1" id="GeneticToggle" name="Created by libsbml flatten routine" fbc:strict="false">
|
||||
<annotation>
|
||||
<ModelToSBOL xmlns="http://sbolstandard.org/modeltosbol/1.0#">
|
||||
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:mts="http://sbolstandard.org/modeltosbol/1.0#">
|
||||
|
|
@ -15,180 +15,64 @@
|
|||
</rdf:RDF>
|
||||
</ModelToSBOL>
|
||||
</annotation>
|
||||
<layout:listOfLayouts xmlns:layout="http://www.sbml.org/sbml/level3/version1/layout/version1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
||||
<layout:layout layout:id="iBioSim">
|
||||
<layout:dimensions layout:width="1070" layout:height="425"/>
|
||||
<layout:listOfCompartmentGlyphs>
|
||||
<layout:compartmentGlyph layout:id="C1__Glyph__Cell" layout:compartment="Cell">
|
||||
<layout:boundingBox>
|
||||
<layout:position layout:x="0" layout:y="0"/>
|
||||
<layout:dimensions layout:width="1070" layout:height="425"/>
|
||||
</layout:boundingBox>
|
||||
</layout:compartmentGlyph>
|
||||
</layout:listOfCompartmentGlyphs>
|
||||
<layout:listOfSpeciesGlyphs>
|
||||
<layout:speciesGlyph layout:id="C1__Glyph__LacI" layout:species="LacI">
|
||||
<layout:boundingBox>
|
||||
<layout:position layout:x="98" layout:y="66"/>
|
||||
<layout:dimensions layout:width="100" layout:height="30"/>
|
||||
</layout:boundingBox>
|
||||
</layout:speciesGlyph>
|
||||
<layout:speciesGlyph layout:id="C1__Glyph__TetR" layout:species="TetR">
|
||||
<layout:boundingBox>
|
||||
<layout:position layout:x="90" layout:y="290"/>
|
||||
<layout:dimensions layout:width="100" layout:height="30"/>
|
||||
</layout:boundingBox>
|
||||
</layout:speciesGlyph>
|
||||
<layout:speciesGlyph layout:id="C1__Glyph__GFP" layout:species="GFP">
|
||||
<layout:boundingBox>
|
||||
<layout:position layout:x="290" layout:y="290"/>
|
||||
<layout:dimensions layout:width="100" layout:height="30"/>
|
||||
</layout:boundingBox>
|
||||
</layout:speciesGlyph>
|
||||
<layout:speciesGlyph layout:id="C1__Glyph__pLac" layout:species="C1__pLac">
|
||||
<layout:boundingBox>
|
||||
<layout:position layout:x="100" layout:y="170"/>
|
||||
<layout:dimensions layout:width="100" layout:height="30"/>
|
||||
</layout:boundingBox>
|
||||
</layout:speciesGlyph>
|
||||
</layout:listOfSpeciesGlyphs>
|
||||
<layout:listOfTextGlyphs>
|
||||
<layout:textGlyph layout:graphicalObject="C1__Glyph__Cell" layout:id="C1__TextGlyph__Cell" layout:text="Cell">
|
||||
<layout:boundingBox>
|
||||
<layout:position layout:x="0" layout:y="0"/>
|
||||
<layout:dimensions layout:width="1070" layout:height="425"/>
|
||||
</layout:boundingBox>
|
||||
</layout:textGlyph>
|
||||
<layout:textGlyph layout:graphicalObject="C1__Glyph__LacI" layout:id="C1__TextGlyph__LacI" layout:text="LacI">
|
||||
<layout:boundingBox>
|
||||
<layout:position layout:x="98" layout:y="66"/>
|
||||
<layout:dimensions layout:width="100" layout:height="30"/>
|
||||
</layout:boundingBox>
|
||||
</layout:textGlyph>
|
||||
<layout:textGlyph layout:graphicalObject="C1__Glyph__TetR" layout:id="C1__TextGlyph__TetR" layout:text="TetR">
|
||||
<layout:boundingBox>
|
||||
<layout:position layout:x="90" layout:y="290"/>
|
||||
<layout:dimensions layout:width="100" layout:height="30"/>
|
||||
</layout:boundingBox>
|
||||
</layout:textGlyph>
|
||||
<layout:textGlyph layout:graphicalObject="C1__Glyph__GFP" layout:id="C1__TextGlyph__GFP" layout:text="GFP">
|
||||
<layout:boundingBox>
|
||||
<layout:position layout:x="290" layout:y="290"/>
|
||||
<layout:dimensions layout:width="100" layout:height="30"/>
|
||||
</layout:boundingBox>
|
||||
</layout:textGlyph>
|
||||
<layout:textGlyph layout:graphicalObject="C1__Glyph__pLac" layout:id="C1__TextGlyph__pLac" layout:text="pLac">
|
||||
<layout:boundingBox>
|
||||
<layout:position layout:x="100" layout:y="170"/>
|
||||
<layout:dimensions layout:width="100" layout:height="30"/>
|
||||
</layout:boundingBox>
|
||||
</layout:textGlyph>
|
||||
</layout:listOfTextGlyphs>
|
||||
</layout:layout>
|
||||
<layout:layout layout:id="C2__iBioSim">
|
||||
<layout:dimensions layout:width="1070" layout:height="425"/>
|
||||
<layout:listOfCompartmentGlyphs>
|
||||
<layout:compartmentGlyph layout:id="C2__Glyph__Cell" layout:compartment="Cell">
|
||||
<layout:boundingBox>
|
||||
<layout:position layout:x="0" layout:y="0"/>
|
||||
<layout:dimensions layout:width="1070" layout:height="425"/>
|
||||
</layout:boundingBox>
|
||||
</layout:compartmentGlyph>
|
||||
</layout:listOfCompartmentGlyphs>
|
||||
<layout:listOfSpeciesGlyphs>
|
||||
<layout:speciesGlyph layout:id="C2__Glyph__TetR" layout:species="TetR">
|
||||
<layout:boundingBox>
|
||||
<layout:position layout:x="123" layout:y="65"/>
|
||||
<layout:dimensions layout:width="100" layout:height="30"/>
|
||||
</layout:boundingBox>
|
||||
</layout:speciesGlyph>
|
||||
<layout:speciesGlyph layout:id="C2__Glyph__LacI" layout:species="LacI">
|
||||
<layout:boundingBox>
|
||||
<layout:position layout:x="138" layout:y="216"/>
|
||||
<layout:dimensions layout:width="100" layout:height="30"/>
|
||||
</layout:boundingBox>
|
||||
</layout:speciesGlyph>
|
||||
</layout:listOfSpeciesGlyphs>
|
||||
<layout:listOfTextGlyphs>
|
||||
<layout:textGlyph layout:graphicalObject="C2__Glyph__Cell" layout:id="C2__TextGlyph__Cell" layout:text="Cell">
|
||||
<layout:boundingBox>
|
||||
<layout:position layout:x="0" layout:y="0"/>
|
||||
<layout:dimensions layout:width="1070" layout:height="425"/>
|
||||
</layout:boundingBox>
|
||||
</layout:textGlyph>
|
||||
<layout:textGlyph layout:graphicalObject="C2__Glyph__TetR" layout:id="C2__TextGlyph__TetR" layout:text="TetR">
|
||||
<layout:boundingBox>
|
||||
<layout:position layout:x="123" layout:y="65"/>
|
||||
<layout:dimensions layout:width="100" layout:height="30"/>
|
||||
</layout:boundingBox>
|
||||
</layout:textGlyph>
|
||||
<layout:textGlyph layout:graphicalObject="C2__Glyph__LacI" layout:id="C2__TextGlyph__LacI" layout:text="LacI">
|
||||
<layout:boundingBox>
|
||||
<layout:position layout:x="138" layout:y="216"/>
|
||||
<layout:dimensions layout:width="100" layout:height="30"/>
|
||||
</layout:boundingBox>
|
||||
</layout:textGlyph>
|
||||
</layout:listOfTextGlyphs>
|
||||
</layout:layout>
|
||||
</layout:listOfLayouts>
|
||||
<listOfCompartments>
|
||||
<compartment id="Cell" constant="true" spatialDimensions="3" size="1"/>
|
||||
<compartment id="Cell" spatialDimensions="3" size="1" constant="true"/>
|
||||
</listOfCompartments>
|
||||
<listOfSpecies>
|
||||
<species id="GFP" constant="false" initialAmount="0" hasOnlySubstanceUnits="true" metaid="iBioSim11" boundaryCondition="false" compartment="Cell"/>
|
||||
<species id="LacI" constant="false" initialAmount="60" hasOnlySubstanceUnits="true" metaid="iBioSim12" boundaryCondition="false" compartment="Cell"/>
|
||||
<species id="TetR" constant="false" initialAmount="0" hasOnlySubstanceUnits="true" metaid="iBioSim13" boundaryCondition="false" compartment="Cell"/>
|
||||
<species id="IPTG" constant="false" initialAmount="0" hasOnlySubstanceUnits="true" metaid="iBioSim14" boundaryCondition="true" compartment="Cell"/>
|
||||
<species id="aTc" constant="false" initialAmount="0" hasOnlySubstanceUnits="true" metaid="iBioSim15" boundaryCondition="true" compartment="Cell"/>
|
||||
<species id="IPTG_LacI" constant="false" initialAmount="0" hasOnlySubstanceUnits="true" metaid="iBioSim16" boundaryCondition="false" compartment="Cell"/>
|
||||
<species id="aTc_TetR" constant="false" initialAmount="0" hasOnlySubstanceUnits="true" metaid="iBioSim17" boundaryCondition="false" compartment="Cell"/>
|
||||
<species id="C1__pLac" constant="false" initialAmount="2" hasOnlySubstanceUnits="true" metaid="C1__iBioSim40" boundaryCondition="false" sboTerm="SBO:0000590" compartment="Cell"/>
|
||||
<species id="C2__P0" constant="false" initialAmount="2" hasOnlySubstanceUnits="true" metaid="C2__iBioSim38" boundaryCondition="false" sboTerm="SBO:0000590" compartment="Cell"/>
|
||||
<species metaid="iBioSim11" id="GFP" compartment="Cell" initialAmount="0" hasOnlySubstanceUnits="true" boundaryCondition="false" constant="false"/>
|
||||
<species metaid="iBioSim12" id="LacI" compartment="Cell" initialAmount="60" hasOnlySubstanceUnits="true" boundaryCondition="false" constant="false"/>
|
||||
<species metaid="iBioSim13" id="TetR" compartment="Cell" initialAmount="0" hasOnlySubstanceUnits="true" boundaryCondition="false" constant="false"/>
|
||||
<species metaid="iBioSim14" id="IPTG" compartment="Cell" initialAmount="0" hasOnlySubstanceUnits="true" boundaryCondition="true" constant="false"/>
|
||||
<species metaid="iBioSim15" id="aTc" compartment="Cell" initialAmount="0" hasOnlySubstanceUnits="true" boundaryCondition="true" constant="false"/>
|
||||
<species metaid="iBioSim16" id="IPTG_LacI" compartment="Cell" initialAmount="0" hasOnlySubstanceUnits="true" boundaryCondition="false" constant="false"/>
|
||||
<species metaid="iBioSim17" id="aTc_TetR" compartment="Cell" initialAmount="0" hasOnlySubstanceUnits="true" boundaryCondition="false" constant="false"/>
|
||||
<species metaid="C1__iBioSim40" sboTerm="SBO:0000590" id="C1__pLac" compartment="Cell" initialAmount="2" hasOnlySubstanceUnits="true" boundaryCondition="false" constant="false"/>
|
||||
<species metaid="C2__iBioSim38" sboTerm="SBO:0000590" id="C2__P0" compartment="Cell" initialAmount="2" hasOnlySubstanceUnits="true" boundaryCondition="false" constant="false"/>
|
||||
</listOfSpecies>
|
||||
<listOfParameters>
|
||||
<parameter id="kd" constant="true" name="Degradation rate" metaid="iBioSim3" value="0.0075"/>
|
||||
<parameter id="kc_f" constant="true" name="Forward complex formation rate" metaid="iBioSim4" value="0.05"/>
|
||||
<parameter id="kc_r" constant="true" name="Reverse complex formation rate" metaid="iBioSim5" value="1"/>
|
||||
<parameter id="nc" constant="true" name="Stoichiometry of binding" metaid="iBioSim6" value="2"/>
|
||||
<parameter id="kmdiff_f" constant="true" name="Forward membrane diffusion rate" metaid="iBioSim7" value="1"/>
|
||||
<parameter id="kmdiff_r" constant="true" name="Reverse membrane diffusion rate" metaid="iBioSim8" value="0.01"/>
|
||||
<parameter id="kecd" constant="true" name="Extracellular degradation rate" metaid="iBioSim9" value="0.005"/>
|
||||
<parameter id="kecdiff" constant="true" name="Extracellular diffusion rate" metaid="iBioSim10" value="1"/>
|
||||
<parameter id="C1__kr_f" constant="true" name="Forward repression binding rate" metaid="C1__iBioSim22" value="0.5"/>
|
||||
<parameter id="C1__kr_r" constant="true" name="Reverse repression binding rate" metaid="C1__iBioSim23" value="1"/>
|
||||
<parameter id="C1__ka_f" constant="true" name="Forward activation binding rate" metaid="C1__iBioSim24" value="0.0033"/>
|
||||
<parameter id="C1__ka_r" constant="true" name="Reverse activation binding rate" metaid="C1__iBioSim25" value="1"/>
|
||||
<parameter id="C1__ko_f" constant="true" name="Forward RNAP binding rate" metaid="C1__iBioSim26" value="0.033"/>
|
||||
<parameter id="C1__ko_r" constant="true" name="Reverse RNAP binding rate" metaid="C1__iBioSim27" value="1"/>
|
||||
<parameter id="C1__kao_f" constant="true" name="Forward activated RNAP binding rate" metaid="C1__iBioSim28" value="1"/>
|
||||
<parameter id="C1__kao_r" constant="true" name="Reverse activated RNAP binding rate" metaid="C1__iBioSim29" value="1"/>
|
||||
<parameter id="C1__nc" constant="true" name="Stoichiometry of binding" metaid="C1__iBioSim30" value="2"/>
|
||||
<parameter id="C1__nr" constant="true" name="Initial RNAP count" metaid="C1__iBioSim31" value="30"/>
|
||||
<parameter id="C1__ko" constant="true" name="Open complex production rate" metaid="C1__iBioSim32" value="0.05"/>
|
||||
<parameter id="C1__kb" constant="true" name="Basal production rate" metaid="C1__iBioSim33" value="0.0001"/>
|
||||
<parameter id="C1__ng" constant="true" name="Initial promoter count" metaid="C1__iBioSim34" value="2"/>
|
||||
<parameter id="C1__np" constant="true" name="Stoichiometry of production" metaid="C1__iBioSim35" value="10"/>
|
||||
<parameter id="C1__ka" constant="true" name="Activated production rate" metaid="C1__iBioSim36" value="0.25"/>
|
||||
<parameter id="C2__kr_f" constant="true" name="Forward repression binding rate" metaid="C2__iBioSim21" value="0.5"/>
|
||||
<parameter id="C2__kr_r" constant="true" name="Reverse repression binding rate" metaid="C2__iBioSim22" value="1"/>
|
||||
<parameter id="C2__ka_f" constant="true" name="Forward activation binding rate" metaid="C2__iBioSim23" value="0.0033"/>
|
||||
<parameter id="C2__ka_r" constant="true" name="Reverse activation binding rate" metaid="C2__iBioSim24" value="1"/>
|
||||
<parameter id="C2__ko_f" constant="true" name="Forward RNAP binding rate" metaid="C2__iBioSim25" value="0.033"/>
|
||||
<parameter id="C2__ko_r" constant="true" name="Reverse RNAP binding rate" metaid="C2__iBioSim26" value="1"/>
|
||||
<parameter id="C2__kao_f" constant="true" name="Forward activated RNAP binding rate" metaid="C2__iBioSim27" value="1"/>
|
||||
<parameter id="C2__kao_r" constant="true" name="Reverse activated RNAP binding rate" metaid="C2__iBioSim28" value="1"/>
|
||||
<parameter id="C2__nc" constant="true" name="Stoichiometry of binding" metaid="C2__iBioSim29" value="2"/>
|
||||
<parameter id="C2__nr" constant="true" name="Initial RNAP count" metaid="C2__iBioSim30" value="30"/>
|
||||
<parameter id="C2__ko" constant="true" name="Open complex production rate" metaid="C2__iBioSim31" value="0.05"/>
|
||||
<parameter id="C2__kb" constant="true" name="Basal production rate" metaid="C2__iBioSim32" value="0.0001"/>
|
||||
<parameter id="C2__ng" constant="true" name="Initial promoter count" metaid="C2__iBioSim33" value="2"/>
|
||||
<parameter id="C2__np" constant="true" name="Stoichiometry of production" metaid="C2__iBioSim34" value="10"/>
|
||||
<parameter id="C2__ka" constant="true" name="Activated production rate" metaid="C2__iBioSim35" value="0.25"/>
|
||||
<parameter metaid="iBioSim3" id="kd" name="Degradation rate" value="0.0075" constant="true"/>
|
||||
<parameter metaid="iBioSim4" id="kc_f" name="Forward complex formation rate" value="0.05" constant="true"/>
|
||||
<parameter metaid="iBioSim5" id="kc_r" name="Reverse complex formation rate" value="1" constant="true"/>
|
||||
<parameter metaid="iBioSim6" id="nc" name="Stoichiometry of binding" value="2" constant="true"/>
|
||||
<parameter metaid="iBioSim7" id="kmdiff_f" name="Forward membrane diffusion rate" value="1" constant="true"/>
|
||||
<parameter metaid="iBioSim8" id="kmdiff_r" name="Reverse membrane diffusion rate" value="0.01" constant="true"/>
|
||||
<parameter metaid="iBioSim9" id="kecd" name="Extracellular degradation rate" value="0.005" constant="true"/>
|
||||
<parameter metaid="iBioSim10" id="kecdiff" name="Extracellular diffusion rate" value="1" constant="true"/>
|
||||
<parameter metaid="C1__iBioSim22" id="C1__kr_f" name="Forward repression binding rate" value="0.5" constant="true"/>
|
||||
<parameter metaid="C1__iBioSim23" id="C1__kr_r" name="Reverse repression binding rate" value="1" constant="true"/>
|
||||
<parameter metaid="C1__iBioSim24" id="C1__ka_f" name="Forward activation binding rate" value="0.0033" constant="true"/>
|
||||
<parameter metaid="C1__iBioSim25" id="C1__ka_r" name="Reverse activation binding rate" value="1" constant="true"/>
|
||||
<parameter metaid="C1__iBioSim26" id="C1__ko_f" name="Forward RNAP binding rate" value="0.033" constant="true"/>
|
||||
<parameter metaid="C1__iBioSim27" id="C1__ko_r" name="Reverse RNAP binding rate" value="1" constant="true"/>
|
||||
<parameter metaid="C1__iBioSim28" id="C1__kao_f" name="Forward activated RNAP binding rate" value="1" constant="true"/>
|
||||
<parameter metaid="C1__iBioSim29" id="C1__kao_r" name="Reverse activated RNAP binding rate" value="1" constant="true"/>
|
||||
<parameter metaid="C1__iBioSim30" id="C1__nc" name="Stoichiometry of binding" value="2" constant="true"/>
|
||||
<parameter metaid="C1__iBioSim31" id="C1__nr" name="Initial RNAP count" value="30" constant="true"/>
|
||||
<parameter metaid="C1__iBioSim32" id="C1__ko" name="Open complex production rate" value="0.05" constant="true"/>
|
||||
<parameter metaid="C1__iBioSim33" id="C1__kb" name="Basal production rate" value="0.0001" constant="true"/>
|
||||
<parameter metaid="C1__iBioSim34" id="C1__ng" name="Initial promoter count" value="2" constant="true"/>
|
||||
<parameter metaid="C1__iBioSim35" id="C1__np" name="Stoichiometry of production" value="10" constant="true"/>
|
||||
<parameter metaid="C1__iBioSim36" id="C1__ka" name="Activated production rate" value="0.25" constant="true"/>
|
||||
<parameter metaid="C2__iBioSim21" id="C2__kr_f" name="Forward repression binding rate" value="0.5" constant="true"/>
|
||||
<parameter metaid="C2__iBioSim22" id="C2__kr_r" name="Reverse repression binding rate" value="1" constant="true"/>
|
||||
<parameter metaid="C2__iBioSim23" id="C2__ka_f" name="Forward activation binding rate" value="0.0033" constant="true"/>
|
||||
<parameter metaid="C2__iBioSim24" id="C2__ka_r" name="Reverse activation binding rate" value="1" constant="true"/>
|
||||
<parameter metaid="C2__iBioSim25" id="C2__ko_f" name="Forward RNAP binding rate" value="0.033" constant="true"/>
|
||||
<parameter metaid="C2__iBioSim26" id="C2__ko_r" name="Reverse RNAP binding rate" value="1" constant="true"/>
|
||||
<parameter metaid="C2__iBioSim27" id="C2__kao_f" name="Forward activated RNAP binding rate" value="1" constant="true"/>
|
||||
<parameter metaid="C2__iBioSim28" id="C2__kao_r" name="Reverse activated RNAP binding rate" value="1" constant="true"/>
|
||||
<parameter metaid="C2__iBioSim29" id="C2__nc" name="Stoichiometry of binding" value="2" constant="true"/>
|
||||
<parameter metaid="C2__iBioSim30" id="C2__nr" name="Initial RNAP count" value="30" constant="true"/>
|
||||
<parameter metaid="C2__iBioSim31" id="C2__ko" name="Open complex production rate" value="0.05" constant="true"/>
|
||||
<parameter metaid="C2__iBioSim32" id="C2__kb" name="Basal production rate" value="0.0001" constant="true"/>
|
||||
<parameter metaid="C2__iBioSim33" id="C2__ng" name="Initial promoter count" value="2" constant="true"/>
|
||||
<parameter metaid="C2__iBioSim34" id="C2__np" name="Stoichiometry of production" value="10" constant="true"/>
|
||||
<parameter metaid="C2__iBioSim35" id="C2__ka" name="Activated production rate" value="0.25" constant="true"/>
|
||||
</listOfParameters>
|
||||
<listOfReactions>
|
||||
<reaction id="Degradation_GFP" metaid="iBioSim18" reversible="false" sboTerm="SBO:0000179" fast="false" compartment="Cell">
|
||||
<reaction metaid="iBioSim18" sboTerm="SBO:0000179" id="Degradation_GFP" reversible="false" compartment="Cell">
|
||||
<listOfReactants>
|
||||
<speciesReference constant="true" species="GFP" stoichiometry="1"/>
|
||||
<speciesReference species="GFP" stoichiometry="1" constant="true"/>
|
||||
</listOfReactants>
|
||||
<kineticLaw>
|
||||
<math xmlns="http://www.w3.org/1998/Math/MathML">
|
||||
|
|
@ -198,11 +82,11 @@
|
|||
<ci> GFP </ci>
|
||||
</apply>
|
||||
</math>
|
||||
</kineticLaw>
|
||||
</kineticLaw>
|
||||
</reaction>
|
||||
<reaction id="Degradation_TetR" metaid="iBioSim19" reversible="false" sboTerm="SBO:0000179" fast="false" compartment="Cell">
|
||||
<reaction metaid="iBioSim19" sboTerm="SBO:0000179" id="Degradation_TetR" reversible="false" compartment="Cell">
|
||||
<listOfReactants>
|
||||
<speciesReference constant="true" species="TetR" stoichiometry="1"/>
|
||||
<speciesReference species="TetR" stoichiometry="1" constant="true"/>
|
||||
</listOfReactants>
|
||||
<kineticLaw>
|
||||
<math xmlns="http://www.w3.org/1998/Math/MathML">
|
||||
|
|
@ -212,11 +96,11 @@
|
|||
<ci> TetR </ci>
|
||||
</apply>
|
||||
</math>
|
||||
</kineticLaw>
|
||||
</kineticLaw>
|
||||
</reaction>
|
||||
<reaction id="Degradation_IPTG_LacI" metaid="iBioSim20" reversible="false" sboTerm="SBO:0000179" fast="false" compartment="Cell">
|
||||
<reaction metaid="iBioSim20" sboTerm="SBO:0000179" id="Degradation_IPTG_LacI" reversible="false" compartment="Cell">
|
||||
<listOfReactants>
|
||||
<speciesReference constant="true" species="IPTG_LacI" stoichiometry="1"/>
|
||||
<speciesReference species="IPTG_LacI" stoichiometry="1" constant="true"/>
|
||||
</listOfReactants>
|
||||
<kineticLaw>
|
||||
<math xmlns="http://www.w3.org/1998/Math/MathML">
|
||||
|
|
@ -226,11 +110,11 @@
|
|||
<ci> IPTG_LacI </ci>
|
||||
</apply>
|
||||
</math>
|
||||
</kineticLaw>
|
||||
</kineticLaw>
|
||||
</reaction>
|
||||
<reaction id="Degradation_aTc_TetR" metaid="iBioSim21" reversible="false" sboTerm="SBO:0000179" fast="false" compartment="Cell">
|
||||
<reaction metaid="iBioSim21" sboTerm="SBO:0000179" id="Degradation_aTc_TetR" reversible="false" compartment="Cell">
|
||||
<listOfReactants>
|
||||
<speciesReference constant="true" species="aTc_TetR" stoichiometry="1"/>
|
||||
<speciesReference species="aTc_TetR" stoichiometry="1" constant="true"/>
|
||||
</listOfReactants>
|
||||
<kineticLaw>
|
||||
<math xmlns="http://www.w3.org/1998/Math/MathML">
|
||||
|
|
@ -240,15 +124,15 @@
|
|||
<ci> aTc_TetR </ci>
|
||||
</apply>
|
||||
</math>
|
||||
</kineticLaw>
|
||||
</kineticLaw>
|
||||
</reaction>
|
||||
<reaction id="Complex_IPTG_LacI" metaid="iBioSim22" reversible="true" sboTerm="SBO:0000177" fast="false" compartment="Cell">
|
||||
<reaction metaid="iBioSim22" sboTerm="SBO:0000177" id="Complex_IPTG_LacI" reversible="true" compartment="Cell">
|
||||
<listOfReactants>
|
||||
<speciesReference constant="true" species="IPTG" stoichiometry="1"/>
|
||||
<speciesReference constant="true" species="LacI" stoichiometry="1"/>
|
||||
<speciesReference species="IPTG" stoichiometry="1" constant="true"/>
|
||||
<speciesReference species="LacI" stoichiometry="1" constant="true"/>
|
||||
</listOfReactants>
|
||||
<listOfProducts>
|
||||
<speciesReference constant="true" species="IPTG_LacI" stoichiometry="1"/>
|
||||
<speciesReference species="IPTG_LacI" stoichiometry="1" constant="true"/>
|
||||
</listOfProducts>
|
||||
<kineticLaw>
|
||||
<math xmlns="http://www.w3.org/1998/Math/MathML">
|
||||
|
|
@ -275,19 +159,19 @@
|
|||
</apply>
|
||||
</apply>
|
||||
</math>
|
||||
<listOfLocalParameters>
|
||||
<listOfLocalParameters>
|
||||
<localParameter id="nc_LacI" value="1"/>
|
||||
<localParameter id="nc_IPTG" value="1"/>
|
||||
</listOfLocalParameters>
|
||||
</kineticLaw>
|
||||
</reaction>
|
||||
<reaction id="Complex_aTc_TetR" metaid="iBioSim23" reversible="true" sboTerm="SBO:0000177" fast="false" compartment="Cell">
|
||||
<reaction metaid="iBioSim23" sboTerm="SBO:0000177" id="Complex_aTc_TetR" reversible="true" compartment="Cell">
|
||||
<listOfReactants>
|
||||
<speciesReference constant="true" species="TetR" stoichiometry="1"/>
|
||||
<speciesReference constant="true" species="aTc" stoichiometry="1"/>
|
||||
<speciesReference species="TetR" stoichiometry="1" constant="true"/>
|
||||
<speciesReference species="aTc" stoichiometry="1" constant="true"/>
|
||||
</listOfReactants>
|
||||
<listOfProducts>
|
||||
<speciesReference constant="true" species="aTc_TetR" stoichiometry="1"/>
|
||||
<speciesReference species="aTc_TetR" stoichiometry="1" constant="true"/>
|
||||
</listOfProducts>
|
||||
<kineticLaw>
|
||||
<math xmlns="http://www.w3.org/1998/Math/MathML">
|
||||
|
|
@ -314,15 +198,15 @@
|
|||
</apply>
|
||||
</apply>
|
||||
</math>
|
||||
<listOfLocalParameters>
|
||||
<listOfLocalParameters>
|
||||
<localParameter id="nc_aTc" value="1"/>
|
||||
<localParameter id="nc_TetR" value="1"/>
|
||||
</listOfLocalParameters>
|
||||
</kineticLaw>
|
||||
</reaction>
|
||||
<reaction id="Degradation_LacI" metaid="iBioSim24" reversible="false" sboTerm="SBO:0000179" fast="false" compartment="Cell">
|
||||
<reaction metaid="iBioSim24" sboTerm="SBO:0000179" id="Degradation_LacI" reversible="false" compartment="Cell">
|
||||
<listOfReactants>
|
||||
<speciesReference constant="true" species="LacI" stoichiometry="1"/>
|
||||
<speciesReference species="LacI" stoichiometry="1" constant="true"/>
|
||||
</listOfReactants>
|
||||
<kineticLaw>
|
||||
<math xmlns="http://www.w3.org/1998/Math/MathML">
|
||||
|
|
@ -332,16 +216,16 @@
|
|||
<ci> LacI </ci>
|
||||
</apply>
|
||||
</math>
|
||||
</kineticLaw>
|
||||
</kineticLaw>
|
||||
</reaction>
|
||||
<reaction id="C1__Production_pLac" metaid="C1__iBioSim41" reversible="false" sboTerm="SBO:0000589" fast="false" compartment="Cell">
|
||||
<reaction metaid="C1__iBioSim41" sboTerm="SBO:0000589" id="C1__Production_pLac" reversible="false" compartment="Cell">
|
||||
<listOfProducts>
|
||||
<speciesReference constant="true" species="TetR" stoichiometry="10"/>
|
||||
<speciesReference constant="true" species="GFP" stoichiometry="10"/>
|
||||
<speciesReference species="TetR" stoichiometry="10" constant="true"/>
|
||||
<speciesReference species="GFP" stoichiometry="10" constant="true"/>
|
||||
</listOfProducts>
|
||||
<listOfModifiers>
|
||||
<modifierSpeciesReference species="C1__pLac" sboTerm="SBO:0000598"/>
|
||||
<modifierSpeciesReference species="LacI" sboTerm="SBO:0000020"/>
|
||||
<modifierSpeciesReference sboTerm="SBO:0000598" species="C1__pLac"/>
|
||||
<modifierSpeciesReference sboTerm="SBO:0000020" species="LacI"/>
|
||||
</listOfModifiers>
|
||||
<kineticLaw>
|
||||
<math xmlns="http://www.w3.org/1998/Math/MathML">
|
||||
|
|
@ -386,15 +270,15 @@
|
|||
</apply>
|
||||
</apply>
|
||||
</math>
|
||||
</kineticLaw>
|
||||
</kineticLaw>
|
||||
</reaction>
|
||||
<reaction id="C2__Production_P0" metaid="C2__iBioSim39" reversible="false" sboTerm="SBO:0000589" fast="false" compartment="Cell">
|
||||
<reaction metaid="C2__iBioSim39" sboTerm="SBO:0000589" id="C2__Production_P0" reversible="false" compartment="Cell">
|
||||
<listOfProducts>
|
||||
<speciesReference constant="true" species="LacI" stoichiometry="10"/>
|
||||
<speciesReference species="LacI" stoichiometry="10" constant="true"/>
|
||||
</listOfProducts>
|
||||
<listOfModifiers>
|
||||
<modifierSpeciesReference species="C2__P0" sboTerm="SBO:0000598"/>
|
||||
<modifierSpeciesReference species="TetR" sboTerm="SBO:0000020"/>
|
||||
<modifierSpeciesReference sboTerm="SBO:0000598" species="C2__P0"/>
|
||||
<modifierSpeciesReference sboTerm="SBO:0000020" species="TetR"/>
|
||||
</listOfModifiers>
|
||||
<kineticLaw>
|
||||
<math xmlns="http://www.w3.org/1998/Math/MathML">
|
||||
|
|
@ -439,86 +323,202 @@
|
|||
</apply>
|
||||
</apply>
|
||||
</math>
|
||||
</kineticLaw>
|
||||
</kineticLaw>
|
||||
</reaction>
|
||||
</listOfReactions>
|
||||
<listOfEvents>
|
||||
<event id="IPTG_High" metaid="iBioSim25" useValuesFromTriggerTime="false">
|
||||
<trigger persistent="false" initialValue="false">
|
||||
<event metaid="iBioSim25" id="IPTG_High" useValuesFromTriggerTime="false">
|
||||
<trigger initialValue="false" persistent="false">
|
||||
<math xmlns="http://www.w3.org/1998/Math/MathML">
|
||||
<true/>
|
||||
</math>
|
||||
</trigger>
|
||||
</trigger>
|
||||
<delay>
|
||||
<math xmlns="http://www.w3.org/1998/Math/MathML">
|
||||
<cn type="integer"> 2000 </cn>
|
||||
</math>
|
||||
</delay>
|
||||
</delay>
|
||||
<listOfEventAssignments>
|
||||
<eventAssignment variable="IPTG">
|
||||
<math xmlns="http://www.w3.org/1998/Math/MathML">
|
||||
<cn type="integer"> 60 </cn>
|
||||
</math>
|
||||
</eventAssignment>
|
||||
</eventAssignment>
|
||||
</listOfEventAssignments>
|
||||
</event>
|
||||
<event id="IPTG_Low" metaid="iBioSim26" useValuesFromTriggerTime="false">
|
||||
<trigger persistent="false" initialValue="false">
|
||||
<event metaid="iBioSim26" id="IPTG_Low" useValuesFromTriggerTime="false">
|
||||
<trigger initialValue="false" persistent="false">
|
||||
<math xmlns="http://www.w3.org/1998/Math/MathML">
|
||||
<true/>
|
||||
</math>
|
||||
</trigger>
|
||||
</trigger>
|
||||
<delay>
|
||||
<math xmlns="http://www.w3.org/1998/Math/MathML">
|
||||
<cn type="integer"> 4000 </cn>
|
||||
</math>
|
||||
</delay>
|
||||
</delay>
|
||||
<listOfEventAssignments>
|
||||
<eventAssignment variable="IPTG">
|
||||
<math xmlns="http://www.w3.org/1998/Math/MathML">
|
||||
<cn type="integer"> 0 </cn>
|
||||
</math>
|
||||
</eventAssignment>
|
||||
</eventAssignment>
|
||||
</listOfEventAssignments>
|
||||
</event>
|
||||
<event id="aTc_High" metaid="iBioSim27" useValuesFromTriggerTime="false">
|
||||
<trigger persistent="false" initialValue="false">
|
||||
<event metaid="iBioSim27" id="aTc_High" useValuesFromTriggerTime="false">
|
||||
<trigger initialValue="false" persistent="false">
|
||||
<math xmlns="http://www.w3.org/1998/Math/MathML">
|
||||
<true/>
|
||||
</math>
|
||||
</trigger>
|
||||
</trigger>
|
||||
<delay>
|
||||
<math xmlns="http://www.w3.org/1998/Math/MathML">
|
||||
<cn type="integer"> 6000 </cn>
|
||||
</math>
|
||||
</delay>
|
||||
</delay>
|
||||
<listOfEventAssignments>
|
||||
<eventAssignment variable="aTc">
|
||||
<math xmlns="http://www.w3.org/1998/Math/MathML">
|
||||
<cn type="integer"> 60 </cn>
|
||||
</math>
|
||||
</eventAssignment>
|
||||
</eventAssignment>
|
||||
</listOfEventAssignments>
|
||||
</event>
|
||||
<event id="aTc_Low" metaid="iBioSim28" useValuesFromTriggerTime="false">
|
||||
<trigger persistent="false" initialValue="false">
|
||||
<event metaid="iBioSim28" id="aTc_Low" useValuesFromTriggerTime="false">
|
||||
<trigger initialValue="false" persistent="false">
|
||||
<math xmlns="http://www.w3.org/1998/Math/MathML">
|
||||
<true/>
|
||||
</math>
|
||||
</trigger>
|
||||
</trigger>
|
||||
<delay>
|
||||
<math xmlns="http://www.w3.org/1998/Math/MathML">
|
||||
<cn type="integer"> 8000 </cn>
|
||||
</math>
|
||||
</delay>
|
||||
</delay>
|
||||
<listOfEventAssignments>
|
||||
<eventAssignment variable="aTc">
|
||||
<math xmlns="http://www.w3.org/1998/Math/MathML">
|
||||
<cn type="integer"> 0 </cn>
|
||||
</math>
|
||||
</eventAssignment>
|
||||
</eventAssignment>
|
||||
</listOfEventAssignments>
|
||||
</event>
|
||||
</listOfEvents>
|
||||
<layout:listOfLayouts xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:layout="http://www.sbml.org/sbml/level3/version1/layout/version1">
|
||||
<layout:layout layout:id="iBioSim">
|
||||
<layout:dimensions layout:width="1070" layout:height="425"/>
|
||||
<layout:listOfCompartmentGlyphs>
|
||||
<layout:compartmentGlyph layout:id="C1__Glyph__Cell" layout:compartment="Cell">
|
||||
<layout:boundingBox>
|
||||
<layout:position layout:x="0" layout:y="0"/>
|
||||
<layout:dimensions layout:width="1070" layout:height="425"/>
|
||||
</layout:boundingBox>
|
||||
</layout:compartmentGlyph>
|
||||
</layout:listOfCompartmentGlyphs>
|
||||
<layout:listOfSpeciesGlyphs>
|
||||
<layout:speciesGlyph layout:id="C1__Glyph__LacI" layout:species="LacI">
|
||||
<layout:boundingBox>
|
||||
<layout:position layout:x="98" layout:y="66"/>
|
||||
<layout:dimensions layout:width="100" layout:height="30"/>
|
||||
</layout:boundingBox>
|
||||
</layout:speciesGlyph>
|
||||
<layout:speciesGlyph layout:id="C1__Glyph__TetR" layout:species="TetR">
|
||||
<layout:boundingBox>
|
||||
<layout:position layout:x="90" layout:y="290"/>
|
||||
<layout:dimensions layout:width="100" layout:height="30"/>
|
||||
</layout:boundingBox>
|
||||
</layout:speciesGlyph>
|
||||
<layout:speciesGlyph layout:id="C1__Glyph__GFP" layout:species="GFP">
|
||||
<layout:boundingBox>
|
||||
<layout:position layout:x="290" layout:y="290"/>
|
||||
<layout:dimensions layout:width="100" layout:height="30"/>
|
||||
</layout:boundingBox>
|
||||
</layout:speciesGlyph>
|
||||
<layout:speciesGlyph layout:id="C1__Glyph__pLac" layout:species="C1__pLac">
|
||||
<layout:boundingBox>
|
||||
<layout:position layout:x="100" layout:y="170"/>
|
||||
<layout:dimensions layout:width="100" layout:height="30"/>
|
||||
</layout:boundingBox>
|
||||
</layout:speciesGlyph>
|
||||
</layout:listOfSpeciesGlyphs>
|
||||
<layout:listOfTextGlyphs>
|
||||
<layout:textGlyph layout:id="C1__TextGlyph__Cell" layout:text="Cell" layout:graphicalObject="C1__Glyph__Cell">
|
||||
<layout:boundingBox>
|
||||
<layout:position layout:x="0" layout:y="0"/>
|
||||
<layout:dimensions layout:width="1070" layout:height="425"/>
|
||||
</layout:boundingBox>
|
||||
</layout:textGlyph>
|
||||
<layout:textGlyph layout:id="C1__TextGlyph__LacI" layout:text="LacI" layout:graphicalObject="C1__Glyph__LacI">
|
||||
<layout:boundingBox>
|
||||
<layout:position layout:x="98" layout:y="66"/>
|
||||
<layout:dimensions layout:width="100" layout:height="30"/>
|
||||
</layout:boundingBox>
|
||||
</layout:textGlyph>
|
||||
<layout:textGlyph layout:id="C1__TextGlyph__TetR" layout:text="TetR" layout:graphicalObject="C1__Glyph__TetR">
|
||||
<layout:boundingBox>
|
||||
<layout:position layout:x="90" layout:y="290"/>
|
||||
<layout:dimensions layout:width="100" layout:height="30"/>
|
||||
</layout:boundingBox>
|
||||
</layout:textGlyph>
|
||||
<layout:textGlyph layout:id="C1__TextGlyph__GFP" layout:text="GFP" layout:graphicalObject="C1__Glyph__GFP">
|
||||
<layout:boundingBox>
|
||||
<layout:position layout:x="290" layout:y="290"/>
|
||||
<layout:dimensions layout:width="100" layout:height="30"/>
|
||||
</layout:boundingBox>
|
||||
</layout:textGlyph>
|
||||
<layout:textGlyph layout:id="C1__TextGlyph__pLac" layout:text="pLac" layout:graphicalObject="C1__Glyph__pLac">
|
||||
<layout:boundingBox>
|
||||
<layout:position layout:x="100" layout:y="170"/>
|
||||
<layout:dimensions layout:width="100" layout:height="30"/>
|
||||
</layout:boundingBox>
|
||||
</layout:textGlyph>
|
||||
</layout:listOfTextGlyphs>
|
||||
</layout:layout>
|
||||
<layout:layout layout:id="C2__iBioSim">
|
||||
<layout:dimensions layout:width="1070" layout:height="425"/>
|
||||
<layout:listOfCompartmentGlyphs>
|
||||
<layout:compartmentGlyph layout:id="C2__Glyph__Cell" layout:compartment="Cell">
|
||||
<layout:boundingBox>
|
||||
<layout:position layout:x="0" layout:y="0"/>
|
||||
<layout:dimensions layout:width="1070" layout:height="425"/>
|
||||
</layout:boundingBox>
|
||||
</layout:compartmentGlyph>
|
||||
</layout:listOfCompartmentGlyphs>
|
||||
<layout:listOfSpeciesGlyphs>
|
||||
<layout:speciesGlyph layout:id="C2__Glyph__TetR" layout:species="TetR">
|
||||
<layout:boundingBox>
|
||||
<layout:position layout:x="123" layout:y="65"/>
|
||||
<layout:dimensions layout:width="100" layout:height="30"/>
|
||||
</layout:boundingBox>
|
||||
</layout:speciesGlyph>
|
||||
<layout:speciesGlyph layout:id="C2__Glyph__LacI" layout:species="LacI">
|
||||
<layout:boundingBox>
|
||||
<layout:position layout:x="138" layout:y="216"/>
|
||||
<layout:dimensions layout:width="100" layout:height="30"/>
|
||||
</layout:boundingBox>
|
||||
</layout:speciesGlyph>
|
||||
</layout:listOfSpeciesGlyphs>
|
||||
<layout:listOfTextGlyphs>
|
||||
<layout:textGlyph layout:id="C2__TextGlyph__Cell" layout:text="Cell" layout:graphicalObject="C2__Glyph__Cell">
|
||||
<layout:boundingBox>
|
||||
<layout:position layout:x="0" layout:y="0"/>
|
||||
<layout:dimensions layout:width="1070" layout:height="425"/>
|
||||
</layout:boundingBox>
|
||||
</layout:textGlyph>
|
||||
<layout:textGlyph layout:id="C2__TextGlyph__TetR" layout:text="TetR" layout:graphicalObject="C2__Glyph__TetR">
|
||||
<layout:boundingBox>
|
||||
<layout:position layout:x="123" layout:y="65"/>
|
||||
<layout:dimensions layout:width="100" layout:height="30"/>
|
||||
</layout:boundingBox>
|
||||
</layout:textGlyph>
|
||||
<layout:textGlyph layout:id="C2__TextGlyph__LacI" layout:text="LacI" layout:graphicalObject="C2__Glyph__LacI">
|
||||
<layout:boundingBox>
|
||||
<layout:position layout:x="138" layout:y="216"/>
|
||||
<layout:dimensions layout:width="100" layout:height="30"/>
|
||||
</layout:boundingBox>
|
||||
</layout:textGlyph>
|
||||
</layout:listOfTextGlyphs>
|
||||
</layout:layout>
|
||||
</layout:listOfLayouts>
|
||||
</model>
|
||||
</sbml>
|
||||
File diff suppressed because it is too large
Load diff
|
|
@ -66,7 +66,6 @@ public class SBMLToLPN {
|
|||
*/
|
||||
public LPN convert() {
|
||||
lpn = new LPN();
|
||||
|
||||
convertSBMLParameters();
|
||||
addTransitions();
|
||||
convertPorts();
|
||||
|
|
@ -87,30 +86,27 @@ public class SBMLToLPN {
|
|||
return converter.convert();
|
||||
}
|
||||
|
||||
|
||||
private void convertPorts() {
|
||||
Model model = sbmlDocument.getModel();
|
||||
Model tbModel = tbWrapper.getModel();
|
||||
CompModelPlugin modelPlugin = (CompModelPlugin) impWrapper.getModel().getPlugin("comp");
|
||||
|
||||
CompModelPlugin impModelPlugin = (CompModelPlugin) impWrapper.getModel().getPlugin("comp");
|
||||
boolean isOutput = false;
|
||||
boolean isInput = false;
|
||||
for(Parameter parameter : model.getListOfParameters()) {
|
||||
|
||||
for(Parameter parameter : sbmlDocument.getModel().getListOfParameters()) {
|
||||
isOutput = false;
|
||||
isInput = false;
|
||||
//Go over all parameters of flat model that are marked as booleans
|
||||
|
||||
if(parameter.getSBOTerm() == 602) {
|
||||
String id = parameter.getId();
|
||||
if(!ignoreVariables.contains(id)) {
|
||||
Parameter tbParameter = tbModel.getParameter(id);
|
||||
String p_id = parameter.getId();
|
||||
if(!ignoreVariables.contains(p_id)) {
|
||||
Parameter tbParameter = tbModel.getParameter(p_id);
|
||||
if(tbParameter != null) {
|
||||
CompSBasePlugin plugin = (CompSBasePlugin) tbParameter.getPlugin("comp");
|
||||
if(plugin != null) {
|
||||
for (ReplacedElement replacement : plugin.getListOfReplacedElements()) {
|
||||
String submoduleRefName = tbWrapper.getSubmoduleReferences().get(replacement.getSubmodelRef());
|
||||
if(submoduleRefName != null && impWrapper.getModel().getId().equals(submoduleRefName)) {
|
||||
CompSBasePlugin tbPlugin = (CompSBasePlugin) tbParameter.getPlugin("comp");
|
||||
if(tbPlugin != null) {
|
||||
for (ReplacedElement replacement : tbPlugin.getListOfReplacedElements()) {
|
||||
if(containSubmodelRef(replacement.getSubmodelRef())) {
|
||||
String portRef = replacement.getPortRef();
|
||||
Port port = modelPlugin.getPort(portRef);
|
||||
Port port = impModelPlugin.getPort(portRef);
|
||||
if(port.getSBOTerm() == 601) {
|
||||
isOutput = true;
|
||||
break;
|
||||
|
|
@ -121,22 +117,45 @@ public class SBMLToLPN {
|
|||
}
|
||||
}
|
||||
}
|
||||
if(tbPlugin.isSetReplacedBy()) {
|
||||
ReplacedBy replaceBy = tbPlugin.getReplacedBy();
|
||||
if(containSubmodelRef(replaceBy.getSubmodelRef())) {
|
||||
String portRef = replaceBy.getPortRef();
|
||||
Port port = impModelPlugin.getPort(portRef);
|
||||
if(port.getSBOTerm() == 601) {
|
||||
isOutput = true;
|
||||
|
||||
}
|
||||
else if(port.getSBOTerm() == 600) {
|
||||
isInput = true;
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
if(isOutput) {
|
||||
lpn.addOutput(id, "false");
|
||||
lpn.addOutput(p_id, "false");
|
||||
}
|
||||
else if(isInput){
|
||||
lpn.addInput(id, "false");
|
||||
else if(isInput) {
|
||||
lpn.addInput(p_id, "false");
|
||||
}
|
||||
else {
|
||||
lpn.addBoolean(id, "false");
|
||||
lpn.addBoolean(p_id, "false");
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private boolean containSubmodelRef(String submodelRef) {
|
||||
String submoduleRefName = tbWrapper.getSubmoduleReferences().get(submodelRef);
|
||||
if(submoduleRefName != null && impWrapper.getModel().getId().equals(submoduleRefName)) {
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
private void convertSBMLParameters() {
|
||||
List<Parameter> parameters = sbmlDocument.getModel().getListOfParameters();
|
||||
for(Parameter param : parameters) {
|
||||
|
|
|
|||
|
|
@ -74,7 +74,6 @@ public class VerilogCompiler {
|
|||
*/
|
||||
public void parseVerilog() throws XMLStreamException, IOException, BioSimException {
|
||||
for(Source_textContext vFile : this.stcList) {
|
||||
|
||||
VerilogParser v = new VerilogParser();
|
||||
ParseTreeWalker.DEFAULT.walk(v, vFile);
|
||||
|
||||
|
|
@ -95,21 +94,21 @@ public class VerilogCompiler {
|
|||
}
|
||||
|
||||
public boolean containsSBMLData() {
|
||||
return this.vmoduleToSBML.isEmpty()? false : true;
|
||||
return this.vmoduleToSBML.isEmpty();
|
||||
}
|
||||
|
||||
public boolean containsSBOLData() {
|
||||
return this.vmoduleToSBOL.isEmpty()? false : true;
|
||||
return this.vmoduleToSBOL.isEmpty();
|
||||
}
|
||||
|
||||
public void generateSBOL(boolean generateFlatModel, VerilogModule verilogModule) throws SBOLException, SBOLValidationException, ParseException, VerilogCompilerException {
|
||||
private void generateSBOL(boolean generateFlatModel, VerilogModule verilogModule) throws SBOLException, SBOLValidationException, ParseException, VerilogCompilerException {
|
||||
VerilogToSBOL v2sbol_conv = new VerilogToSBOL(generateFlatModel);
|
||||
WrappedSBOL sbolData = v2sbol_conv.convertVerilog2SBOL(verilogModule);
|
||||
this.vmoduleToSBOL.put(verilogModule.getModuleId(), sbolData);
|
||||
|
||||
}
|
||||
|
||||
public void generateSBML(VerilogModule verilogModule) throws ParseException {
|
||||
private void generateSBML(VerilogModule verilogModule) throws ParseException {
|
||||
VerilogToSBML v2sbml = null;
|
||||
if(verilogModule.getNumSubmodules() > 0) {
|
||||
Map<String, VerilogModule> referredModules = new HashMap<>();
|
||||
|
|
@ -129,34 +128,48 @@ public class VerilogCompiler {
|
|||
|
||||
}
|
||||
|
||||
public SBMLDocument flattenSBML(String outputDirectory, String fileFullPath) throws BioSimException, XMLStreamException, IOException{
|
||||
//Flatten the SBML models and then export to the same directory
|
||||
BioModel sbmlDoc = new BioModel(outputDirectory);
|
||||
if(fileFullPath == null) {
|
||||
throw new FileNotFoundException("fileFullPath was not provided to perform SBML flattening.");
|
||||
/**
|
||||
* Perform flattening on the verilog module with the given verilogModuleId and all its submodules that were compiled to SBML.
|
||||
* @param verilogModuleId: The id to locate the verilog module when flattening is performed.
|
||||
* @param outputDirectory: The output directory where the hierarchical SBML models will be exported to.
|
||||
* @return An SBMLDocument with all of the merged contents.
|
||||
* @throws BioSimException
|
||||
* @throws XMLStreamException
|
||||
* @throws IOException
|
||||
*/
|
||||
public SBMLDocument flattenSBML(String verilogModuleId, String outputDirectory) throws BioSimException, XMLStreamException, IOException{
|
||||
if(verilogModuleId == null || verilogModuleId.isEmpty()) {
|
||||
throw new FileNotFoundException("The given verilogModuleId was not provided to perform SBML flattening.");
|
||||
}
|
||||
|
||||
//iBioSim's flattening method will not perform flattening if the hierarchical SBML models are not exported into a file.
|
||||
WrappedSBML tbWrapper = getSBMLWrapper(verilogModuleId);
|
||||
String hierModelFullPath = outputDirectory + File.separator + verilogModuleId + ".xml";
|
||||
exportSBML(tbWrapper.getSBMLDocument(), hierModelFullPath);
|
||||
|
||||
for(VerilogModuleInstance submodule : verilogModules.get(verilogModuleId).getSubmodules()) {
|
||||
String refModule = submodule.getModuleReference();
|
||||
WrappedSBML sbmlModel = getSBMLWrapper(submodule.getModuleReference());
|
||||
exportSBML(sbmlModel.getSBMLDocument(), outputDirectory + File.separator + refModule + ".xml");
|
||||
}
|
||||
|
||||
//Flatten the SBML models and then export to the same directory
|
||||
BioModel sbmlDoc = new BioModel(outputDirectory);
|
||||
|
||||
//Loading the testbench file will also load the implementation file as well since externalModelDefinition is used.
|
||||
boolean isDocumentLoaded = sbmlDoc.load(fileFullPath);
|
||||
boolean isDocumentLoaded = sbmlDoc.load(hierModelFullPath);
|
||||
if(!isDocumentLoaded) {
|
||||
throw new BioSimException("Unable to perform flattening for the following SBML file " + fileFullPath, "Error Flattening SBML Files");
|
||||
throw new BioSimException("Unable to perform flattening for the following SBML file " + hierModelFullPath, "Error Flattening SBML Files");
|
||||
}
|
||||
SBMLDocument flattenDoc = sbmlDoc.flattenModel(true);
|
||||
return flattenDoc;
|
||||
}
|
||||
|
||||
public void generateLPN(String implementationModuleId, String testbenchModuleId, String outputDirectory) throws SBMLException, XMLStreamException, ParseException, BioSimException, IOException {
|
||||
//iBioSim's flattening method will not perform flattening if the hierarchical SBML models are not exported into a file.
|
||||
exportSBML(getMappedSBMLWrapper(), outputDirectory);
|
||||
String hierModelFullPath = outputDirectory + File.separator + testbenchModuleId + ".xml";
|
||||
SBMLDocument flattenDoc = flattenSBML(outputDirectory, hierModelFullPath);
|
||||
generateLPN(implementationModuleId, testbenchModuleId, flattenDoc);
|
||||
}
|
||||
|
||||
public void generateLPN(String implementationModuleId, String testbenchModuleId, SBMLDocument sbmlDoc) {
|
||||
SBMLDocument flattenDoc = flattenSBML(testbenchModuleId, outputDirectory);
|
||||
WrappedSBML tbWrapper = getSBMLWrapper(testbenchModuleId);
|
||||
WrappedSBML impWrapper = getSBMLWrapper(implementationModuleId);
|
||||
this.lpn = SBMLToLPN.convertSBMLtoLPN(tbWrapper, impWrapper, sbmlDoc);
|
||||
this.lpn = SBMLToLPN.convertSBMLtoLPN(tbWrapper, impWrapper, flattenDoc);
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
@ -172,10 +185,16 @@ public class VerilogCompiler {
|
|||
* This method will allow a user to access the SBMLWrapper based on the verilogModule_id that is assigned to the SBMLWrapper.
|
||||
*
|
||||
* @param verilogModule_id : The Verilog Module identifier is used to locate the SBMLWrapper the the verilog module was converted into.
|
||||
* @return The corresponding SBMLWrapper that is assigned to the given verilogModule_id
|
||||
* @return The corresponding SBMLWrapper that is assigned to the given verilogModule_id.
|
||||
* @throws FileNotFoundException
|
||||
*/
|
||||
public WrappedSBML getSBMLWrapper(String verilogModule_id) {
|
||||
return this.vmoduleToSBML.get(verilogModule_id);
|
||||
public WrappedSBML getSBMLWrapper(String verilogModule_id) throws FileNotFoundException {
|
||||
WrappedSBML sbmlWrapper = this.vmoduleToSBML.get(verilogModule_id);
|
||||
if(sbmlWrapper == null) {
|
||||
throw new FileNotFoundException("Unable to locate the corresponding WrappedSBML object with the given verilogModule_id: " + verilogModule_id);
|
||||
|
||||
}
|
||||
return sbmlWrapper;
|
||||
}
|
||||
|
||||
public Map<String, WrappedSBML> getMappedSBMLWrapper(){
|
||||
|
|
@ -194,6 +213,14 @@ public class VerilogCompiler {
|
|||
return this.lpn;
|
||||
}
|
||||
|
||||
/**
|
||||
* Export all SBML data compiled from verilog compiler. The output file names are assigned from the verilog module id.
|
||||
* @param sbmlMapper: The compiled SBML data.
|
||||
* @param outputDirectory: The directory where the SBML data will be exported to.
|
||||
* @throws SBMLException
|
||||
* @throws FileNotFoundException
|
||||
* @throws XMLStreamException
|
||||
*/
|
||||
public void exportSBML(Map<String, WrappedSBML> sbmlMapper, String outputDirectory) throws SBMLException, FileNotFoundException, XMLStreamException{
|
||||
for (Map.Entry<String, WrappedSBML> entry : sbmlMapper.entrySet()) {
|
||||
String verilogModuleId = entry.getKey();
|
||||
|
|
@ -202,10 +229,13 @@ public class VerilogCompiler {
|
|||
}
|
||||
}
|
||||
|
||||
public void exportLPN(String outputDirectory, String outputFileName){
|
||||
exportLPN(this.lpn, outputDirectory + File.separator + outputFileName + ".lpn");
|
||||
}
|
||||
|
||||
/**
|
||||
* Export all SBOL data compiled from verilog compiler. The output file names are assigned from the verilog module id.
|
||||
* @param sbolMapper: The compiled SBOL data.
|
||||
* @param outputDirectory: The directory where the SBOL data will be exported to.
|
||||
* @throws IOException
|
||||
* @throws SBOLConversionException
|
||||
*/
|
||||
public void exportSBOL(Map<String, WrappedSBOL> sbolMapper, String outputDirectory) throws IOException, SBOLConversionException{
|
||||
for (Map.Entry<String, WrappedSBOL> entry : sbolMapper.entrySet()) {
|
||||
String verilogModuleId = entry.getKey();
|
||||
|
|
@ -214,7 +244,7 @@ public class VerilogCompiler {
|
|||
}
|
||||
}
|
||||
|
||||
private void exportLPN(LPN lpn, String fullPath) {
|
||||
public void exportLPN(LPN lpn, String fullPath) {
|
||||
lpn.save(fullPath);
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -37,10 +37,18 @@ public class VerilogModuleInstance implements AbstractVerilogConstruct {
|
|||
this.moduleReference = moduleReference;
|
||||
}
|
||||
|
||||
/**
|
||||
* Get instantiated name of the submodule referenced.
|
||||
* @return
|
||||
*/
|
||||
public String getSubmoduleId() {
|
||||
return this.submoduleId;
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the referenced submodule id.
|
||||
* @return
|
||||
*/
|
||||
public String getModuleReference() {
|
||||
return this.moduleReference;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -13,6 +13,7 @@ import org.apache.commons.cli.DefaultParser;
|
|||
import org.apache.commons.cli.HelpFormatter;
|
||||
import org.apache.commons.cli.Option;
|
||||
import org.apache.commons.cli.Options;
|
||||
import org.sbml.jsbml.SBMLDocument;
|
||||
import org.sbml.jsbml.text.parser.ParseException;
|
||||
import org.sbolstandard.core2.SBOLConversionException;
|
||||
import org.sbolstandard.core2.SBOLValidationException;
|
||||
|
|
@ -43,16 +44,21 @@ public class VerilogRunner {
|
|||
if(compilerOptions.isGenerateSBOL()){
|
||||
compiledVerilog.exportSBOL(compiledVerilog.getMappedSBOLWrapper(), outputDirectory);
|
||||
}
|
||||
else{
|
||||
if(compilerOptions.isGenerateSBML()) {
|
||||
compiledVerilog.exportSBML(compiledVerilog.getMappedSBMLWrapper(), outputDirectory);
|
||||
}
|
||||
if(compilerOptions.isGenerateLPN()){
|
||||
compiledVerilog.generateLPN(compilerOptions.getImplementationModuleId(), compilerOptions.getTestbenchModuleId(), outputDirectory);
|
||||
compiledVerilog.exportLPN(outputDirectory, compilerOptions.getOutputFileName());
|
||||
|
||||
if(compilerOptions.isGenerateSBML()) {
|
||||
compiledVerilog.exportSBML(compiledVerilog.getMappedSBMLWrapper(), outputDirectory);
|
||||
if(compilerOptions.isOutputFlatModel()) {
|
||||
SBMLDocument flattenDoc = compiledVerilog.flattenSBML(compilerOptions.getTestbenchModuleId(), compilerOptions.getOutputDirectory());
|
||||
compiledVerilog.exportSBML(flattenDoc, outputDirectory + File.separator + compilerOptions.getOutputFileName() + ".xml");
|
||||
}
|
||||
}
|
||||
|
||||
if(compilerOptions.isGenerateLPN()){
|
||||
compiledVerilog.generateLPN(compilerOptions.getImplementationModuleId(), compilerOptions.getTestbenchModuleId(), outputDirectory);
|
||||
compiledVerilog.exportLPN(compiledVerilog.getLPN(), outputDirectory + File.separator + compilerOptions.getOutputFileName() + ".lpn");
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
catch (org.apache.commons.cli.ParseException e1) {
|
||||
printUsage();
|
||||
|
|
|
|||
|
|
@ -1,6 +1,5 @@
|
|||
package edu.utah.ece.async.ibiosim.synthesis.VerilogCompiler;
|
||||
|
||||
import java.util.HashMap;
|
||||
import java.util.HashSet;
|
||||
import java.util.LinkedList;
|
||||
import java.util.List;
|
||||
|
|
|
|||
|
|
@ -3,7 +3,6 @@ package edu.utah.ece.async.ibiosim.synthesis.VerilogCompiler;
|
|||
import java.util.ArrayList;
|
||||
import java.util.HashMap;
|
||||
import java.util.HashSet;
|
||||
import java.util.LinkedList;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
|
|
@ -46,7 +45,6 @@ public class WrappedSBML {
|
|||
private CompSBMLDocumentPlugin docPlugin;
|
||||
private int placeCounter, transitionCounter, waitCounter, delayCounter;
|
||||
private int condCounter, assignCounter;
|
||||
private LinkedList<String> expressionQueue;
|
||||
private List<String> inputs;
|
||||
private List<String> outputs;
|
||||
private Map<String, String> submodulRef;
|
||||
|
|
@ -62,7 +60,6 @@ public class WrappedSBML {
|
|||
this.model = sbmlDocument.createModel();
|
||||
this.compPlugin = (CompModelPlugin) model.createPlugin(sbmlCompPack);
|
||||
this.docPlugin = (CompSBMLDocumentPlugin) sbmlDocument.createPlugin(sbmlCompPack);
|
||||
this.expressionQueue = new LinkedList<String>();
|
||||
this.inputs = new ArrayList<>();
|
||||
this.outputs = new ArrayList<>();
|
||||
this.submodulRef = new HashMap<String, String>();
|
||||
|
|
@ -89,10 +86,6 @@ public class WrappedSBML {
|
|||
bool.setSBOTerm(602);
|
||||
}
|
||||
|
||||
public void addExpressionToQueue(String expression) {
|
||||
this.expressionQueue.addLast(expression);
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
* @param booleanId
|
||||
|
|
|
|||
|
|
@ -1,5 +1,6 @@
|
|||
package edu.utah.ece.async.ibiosim.synthesis.VerilogCompiler;
|
||||
|
||||
import java.io.File;
|
||||
import java.io.FileNotFoundException;
|
||||
import java.io.IOException;
|
||||
|
||||
|
|
@ -9,6 +10,7 @@ import org.apache.commons.cli.CommandLine;
|
|||
import org.apache.commons.cli.ParseException;
|
||||
import org.junit.Assert;
|
||||
import org.junit.Test;
|
||||
import org.sbml.jsbml.SBMLDocument;
|
||||
import org.sbolstandard.core2.SBOLConversionException;
|
||||
import org.sbolstandard.core2.SBOLValidationException;
|
||||
|
||||
|
|
@ -35,14 +37,22 @@ public class CompilerOptions_Tests{
|
|||
|
||||
if(setupOpt.isExportOn()) {
|
||||
String outputDirectory = setupOpt.getOutputDirectory();
|
||||
if(setupOpt.isGenerateSBOL()) {
|
||||
if(setupOpt.isGenerateSBOL()){
|
||||
compiledVerilog.exportSBOL(compiledVerilog.getMappedSBOLWrapper(), outputDirectory);
|
||||
}
|
||||
if(setupOpt.isGenerateSBML()){
|
||||
|
||||
if(setupOpt.isGenerateSBML()) {
|
||||
compiledVerilog.exportSBML(compiledVerilog.getMappedSBMLWrapper(), outputDirectory);
|
||||
if(setupOpt.isOutputFlatModel()) {
|
||||
SBMLDocument flattenDoc = compiledVerilog.flattenSBML(outputDirectory, outputDirectory);
|
||||
compiledVerilog.exportSBML(flattenDoc, outputDirectory + setupOpt.getOutputFileName() + "_flattened.xml");
|
||||
}
|
||||
}
|
||||
if(setupOpt.isGenerateLPN()) {
|
||||
compiledVerilog.exportLPN(outputDirectory, setupOpt.getOutputFileName());
|
||||
|
||||
if(setupOpt.isGenerateLPN()){
|
||||
compiledVerilog.generateLPN(setupOpt.getImplementationModuleId(), setupOpt.getTestbenchModuleId(), outputDirectory);
|
||||
compiledVerilog.exportLPN(compiledVerilog.getLPN(), outputDirectory + File.separator + setupOpt.getOutputFileName());
|
||||
|
||||
}
|
||||
}
|
||||
return compiledVerilog;
|
||||
|
|
|
|||
|
|
@ -16,7 +16,13 @@ import org.junit.runners.Suite.SuiteClasses;
|
|||
CompilerOptions_Tests.class,
|
||||
Decomposition_Test.class,
|
||||
FlatteningSBML_Test.class,
|
||||
LPN_Example1_Test.class,
|
||||
LPNExample1_Test.class,
|
||||
LPNExample2_Test.class,
|
||||
LPNExample3_Test.class,
|
||||
LPNExample4_Test.class,
|
||||
LPNExample5_Test.class,
|
||||
LPNExample6_Test.class,
|
||||
LPNExample7_Test.class,
|
||||
VerilogParserExample1_Test.class,
|
||||
VerilogParserExample2_Test.class,
|
||||
VerilogParserExample3_Test.class,
|
||||
|
|
@ -36,6 +42,7 @@ import org.junit.runners.Suite.SuiteClasses;
|
|||
VerilogParserEvenZeroes_Test.class,
|
||||
VerilogParserMultThree_Test.class,
|
||||
VerilogParserCounter_Test.class,
|
||||
VerilogParserFilter_Test.class,
|
||||
VerilogParserLFSR_Test.class,
|
||||
VerilogParserSRLatch_Test.class,
|
||||
VerilogParserScanflop_Test.class,
|
||||
|
|
@ -49,6 +56,7 @@ import org.junit.runners.Suite.SuiteClasses;
|
|||
SBMLExample8_Test.class,
|
||||
SBMLExample9_Test.class,
|
||||
SBMLExample10_Test.class,
|
||||
SBMLExample11_Test.class,
|
||||
SBOLExample1_Test.class,
|
||||
SBOLExample2_Test.class,
|
||||
SBOLExample3_Test.class,
|
||||
|
|
|
|||
|
|
@ -17,11 +17,11 @@ import edu.utah.ece.async.ibiosim.dataModels.util.exceptions.BioSimException;
|
|||
import edu.utah.ece.async.lema.verification.lpn.LPN;
|
||||
|
||||
/**
|
||||
* Test verilog files containing implementation and testbench design compiled to one LPN model.
|
||||
* Test lpn output for even zero design.
|
||||
*
|
||||
* @author Tramy Nguyen
|
||||
*/
|
||||
public class LPN_Example1_Test {
|
||||
public class LPNExample1_Test {
|
||||
|
||||
private static LPN lpn;
|
||||
|
||||
|
|
@ -50,11 +50,8 @@ public class LPN_Example1_Test {
|
|||
expected_in.put("bit0", "false");
|
||||
expected_in.put("bit1", "false");
|
||||
|
||||
for (Map.Entry<String, String> entry : lpn.getAllInputs().entrySet()) {
|
||||
String actual_key = entry.getKey();
|
||||
String actual_value = entry.getValue();
|
||||
Assert.assertEquals(expected_in.get(actual_key), actual_value);
|
||||
}
|
||||
Assert.assertTrue(expected_in.keySet().equals(lpn.getAllInputs().keySet()));
|
||||
Assert.assertTrue(expected_in.equals(lpn.getAllInputs()));
|
||||
}
|
||||
|
||||
@Test
|
||||
|
|
@ -69,11 +66,8 @@ public class LPN_Example1_Test {
|
|||
expected_out.put("parity0", "false");
|
||||
expected_out.put("parity1", "false");
|
||||
|
||||
for (Map.Entry<String, String> entry : lpn.getAllOutputs().entrySet()) {
|
||||
String actual_key = entry.getKey();
|
||||
String actual_value = entry.getValue();
|
||||
Assert.assertEquals(expected_out.get(actual_key), actual_value);
|
||||
}
|
||||
Assert.assertTrue(expected_out.keySet().equals(lpn.getAllOutputs().keySet()));
|
||||
Assert.assertTrue(expected_out.equals(lpn.getAllOutputs()));
|
||||
}
|
||||
|
||||
@Test
|
||||
|
|
@ -85,18 +79,14 @@ public class LPN_Example1_Test {
|
|||
@Test
|
||||
public void Test_booleans(){
|
||||
Map<String, String> expected_bool = new HashMap<String, String>();
|
||||
|
||||
expected_bool.put("bit0", "false");
|
||||
expected_bool.put("bit1", "false");
|
||||
expected_bool.put("parity0", "false");
|
||||
expected_bool.put("parity1", "false");
|
||||
expected_bool.put("ez_instance__state", "false");
|
||||
|
||||
for (Map.Entry<String, String> entry : lpn.getBooleans().entrySet()) {
|
||||
String actual_key = entry.getKey();
|
||||
String actual_value = entry.getValue();
|
||||
Assert.assertEquals(expected_bool.get(actual_key), actual_value);
|
||||
}
|
||||
Assert.assertTrue(expected_bool.keySet().equals(lpn.getBooleans().keySet()));
|
||||
Assert.assertTrue(expected_bool.equals(lpn.getBooleans()));
|
||||
}
|
||||
|
||||
@Test
|
||||
|
|
@ -104,14 +94,4 @@ public class LPN_Example1_Test {
|
|||
Assert.assertEquals(52, lpn.getAllTransitions().length);
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
|
@ -0,0 +1,98 @@
|
|||
package edu.utah.ece.async.ibiosim.synthesis.VerilogCompiler;
|
||||
|
||||
import java.io.IOException;
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
|
||||
import javax.xml.stream.XMLStreamException;
|
||||
|
||||
import org.junit.Assert;
|
||||
import org.junit.BeforeClass;
|
||||
import org.junit.Test;
|
||||
import org.sbml.jsbml.SBMLException;
|
||||
import org.sbml.jsbml.text.parser.ParseException;
|
||||
import org.sbolstandard.core2.SBOLValidationException;
|
||||
|
||||
import edu.utah.ece.async.ibiosim.dataModels.util.exceptions.BioSimException;
|
||||
import edu.utah.ece.async.lema.verification.lpn.LPN;
|
||||
|
||||
/**
|
||||
* Test lpn output for counter design.
|
||||
* @author Tramy Nguyen
|
||||
*/
|
||||
public class LPNExample2_Test {
|
||||
|
||||
|
||||
private static LPN lpn;
|
||||
|
||||
@BeforeClass
|
||||
public static void setupTest() throws XMLStreamException, IOException, BioSimException, VerilogCompilerException, SBMLException, ParseException, SBOLValidationException {
|
||||
|
||||
CompilerOptions setupOpt = new CompilerOptions();
|
||||
setupOpt.addVerilogFile(CompilerTestSuite.verilogCounter_impFile);
|
||||
setupOpt.addVerilogFile(CompilerTestSuite.verilogCounter_tbFile);
|
||||
|
||||
VerilogCompiler compiledVerilog = VerilogRunner.compile(setupOpt.getVerilogFiles());
|
||||
compiledVerilog.compileVerilogOutputData(true);
|
||||
compiledVerilog.generateLPN("counter_imp", "counter_testbench", CompilerTestSuite.outputDirectory);
|
||||
|
||||
lpn = compiledVerilog.getLPN();
|
||||
}
|
||||
|
||||
@Test
|
||||
public void Test_inputSize(){
|
||||
Assert.assertEquals(1, lpn.getAllInputs().size());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void Test_inputs(){
|
||||
Map<String, String> expected_in = new HashMap<String, String>();
|
||||
expected_in.put("req", "false");
|
||||
|
||||
Assert.assertTrue(expected_in.keySet().equals(lpn.getAllInputs().keySet()));
|
||||
Assert.assertTrue(expected_in.equals(lpn.getAllInputs()));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void Test_outputSize(){
|
||||
Assert.assertEquals(5, lpn.getAllOutputs().size());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void Test_outputs(){
|
||||
Map<String, String> expected_out = new HashMap<String, String>();
|
||||
expected_out.put("a0", "false");
|
||||
expected_out.put("a1", "false");
|
||||
expected_out.put("b0", "false");
|
||||
expected_out.put("b1", "false");
|
||||
expected_out.put("ack", "false");
|
||||
|
||||
Assert.assertTrue(expected_out.keySet().equals(lpn.getAllOutputs().keySet()));
|
||||
Assert.assertTrue(expected_out.equals(lpn.getAllOutputs()));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void Test_booleanSize(){
|
||||
Assert.assertEquals(8, lpn.getBooleans().size());
|
||||
|
||||
}
|
||||
|
||||
@Test
|
||||
public void Test_booleans(){
|
||||
Map<String, String> expected_bool = new HashMap<String, String>();
|
||||
expected_bool.put("req", "false");
|
||||
expected_bool.put("a0", "false");
|
||||
expected_bool.put("a1", "false");
|
||||
expected_bool.put("b0", "false");
|
||||
expected_bool.put("b1", "false");
|
||||
expected_bool.put("req", "false");
|
||||
expected_bool.put("ack", "false");
|
||||
expected_bool.put("req", "false");
|
||||
expected_bool.put("counter_instance__state0", "false");
|
||||
expected_bool.put("counter_instance__state1", "false");
|
||||
|
||||
Assert.assertTrue(expected_bool.keySet().equals(lpn.getBooleans().keySet()));
|
||||
Assert.assertTrue(expected_bool.equals(lpn.getBooleans()));
|
||||
}
|
||||
|
||||
}
|
||||
|
|
@ -0,0 +1,91 @@
|
|||
package edu.utah.ece.async.ibiosim.synthesis.VerilogCompiler;
|
||||
|
||||
import java.io.IOException;
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
|
||||
import javax.xml.stream.XMLStreamException;
|
||||
|
||||
import org.junit.Assert;
|
||||
import org.junit.BeforeClass;
|
||||
import org.junit.Test;
|
||||
import org.sbml.jsbml.SBMLException;
|
||||
import org.sbml.jsbml.text.parser.ParseException;
|
||||
import org.sbolstandard.core2.SBOLValidationException;
|
||||
|
||||
import edu.utah.ece.async.ibiosim.dataModels.util.exceptions.BioSimException;
|
||||
import edu.utah.ece.async.lema.verification.lpn.LPN;
|
||||
|
||||
/**
|
||||
* Test lpn output for filter design.
|
||||
* @author Tramy Nguyen
|
||||
*
|
||||
*/
|
||||
public class LPNExample3_Test {
|
||||
|
||||
private static LPN lpn;
|
||||
|
||||
@BeforeClass
|
||||
public static void setupTest() throws XMLStreamException, IOException, BioSimException, VerilogCompilerException, SBMLException, ParseException, SBOLValidationException {
|
||||
|
||||
CompilerOptions setupOpt = new CompilerOptions();
|
||||
setupOpt.addVerilogFile(CompilerTestSuite.verilogFilter_impFile);
|
||||
setupOpt.addVerilogFile(CompilerTestSuite.verilogFilter_tbFile);
|
||||
|
||||
VerilogCompiler compiledVerilog = VerilogRunner.compile(setupOpt.getVerilogFiles());
|
||||
compiledVerilog.compileVerilogOutputData(true);
|
||||
compiledVerilog.generateLPN("filter_imp", "filter_testbench", CompilerTestSuite.outputDirectory);
|
||||
|
||||
lpn = compiledVerilog.getLPN();
|
||||
}
|
||||
|
||||
@Test
|
||||
public void Test_inputSize(){
|
||||
Assert.assertEquals(2, lpn.getAllInputs().size());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void Test_inputs(){
|
||||
Map<String, String> expected_in = new HashMap<String, String>();
|
||||
expected_in.put("Start", "false");
|
||||
expected_in.put("Sensor", "false");
|
||||
|
||||
Assert.assertTrue(expected_in.keySet().equals(lpn.getAllInputs().keySet()));
|
||||
Assert.assertTrue(expected_in.equals(lpn.getAllInputs()));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void Test_outputSize(){
|
||||
Assert.assertEquals(3, lpn.getAllOutputs().size());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void Test_outputs(){
|
||||
Map<String, String> expected_out = new HashMap<String, String>();
|
||||
expected_out.put("Actuator", "false");
|
||||
expected_out.put("QS1", "false");
|
||||
expected_out.put("QS2", "false");
|
||||
|
||||
Assert.assertTrue(expected_out.keySet().equals(lpn.getAllOutputs().keySet()));
|
||||
Assert.assertTrue(expected_out.equals(lpn.getAllOutputs()));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void Test_booleanSize(){
|
||||
Assert.assertEquals(5, lpn.getBooleans().size());
|
||||
|
||||
}
|
||||
|
||||
@Test
|
||||
public void Test_booleans(){
|
||||
Map<String, String> expected_bool = new HashMap<String, String>();
|
||||
expected_bool.put("Start", "false");
|
||||
expected_bool.put("Sensor", "false");
|
||||
expected_bool.put("QS1", "false");
|
||||
expected_bool.put("QS2", "false");
|
||||
expected_bool.put("Actuator", "false");
|
||||
|
||||
Assert.assertTrue(expected_bool.keySet().equals(lpn.getBooleans().keySet()));
|
||||
Assert.assertTrue(expected_bool.equals(lpn.getBooleans()));
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,100 @@
|
|||
package edu.utah.ece.async.ibiosim.synthesis.VerilogCompiler;
|
||||
|
||||
import java.io.IOException;
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
|
||||
import javax.xml.stream.XMLStreamException;
|
||||
|
||||
import org.junit.Assert;
|
||||
import org.junit.BeforeClass;
|
||||
import org.junit.Test;
|
||||
import org.sbml.jsbml.SBMLException;
|
||||
import org.sbml.jsbml.text.parser.ParseException;
|
||||
import org.sbolstandard.core2.SBOLValidationException;
|
||||
|
||||
import edu.utah.ece.async.ibiosim.dataModels.util.exceptions.BioSimException;
|
||||
import edu.utah.ece.async.lema.verification.lpn.LPN;
|
||||
|
||||
/**
|
||||
* Test lpn output for lfsr design.
|
||||
* @author Tramy Nguyen
|
||||
*
|
||||
*/
|
||||
public class LPNExample4_Test {
|
||||
|
||||
private static LPN lpn;
|
||||
|
||||
@BeforeClass
|
||||
public static void setupTest() throws XMLStreamException, IOException, BioSimException, VerilogCompilerException, SBMLException, ParseException, SBOLValidationException {
|
||||
|
||||
CompilerOptions setupOpt = new CompilerOptions();
|
||||
setupOpt.addVerilogFile(CompilerTestSuite.verilogLFSR_impFile);
|
||||
setupOpt.addVerilogFile(CompilerTestSuite.verilogLFSR_tbFile);
|
||||
|
||||
VerilogCompiler compiledVerilog = VerilogRunner.compile(setupOpt.getVerilogFiles());
|
||||
compiledVerilog.compileVerilogOutputData(true);
|
||||
compiledVerilog.generateLPN("lfsr_imp", "lfsr_testbench", CompilerTestSuite.outputDirectory);
|
||||
|
||||
lpn = compiledVerilog.getLPN();
|
||||
}
|
||||
|
||||
@Test
|
||||
public void Test_inputSize(){
|
||||
Assert.assertEquals(1, lpn.getAllInputs().size());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void Test_inputs(){
|
||||
Map<String, String> expected_in = new HashMap<String, String>();
|
||||
expected_in.put("req", "false");
|
||||
|
||||
Assert.assertTrue(expected_in.keySet().equals(lpn.getAllInputs().keySet()));
|
||||
Assert.assertTrue(expected_in.equals(lpn.getAllInputs()));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void Test_outputSize(){
|
||||
Assert.assertEquals(7, lpn.getAllOutputs().size());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void Test_outputs(){
|
||||
Map<String, String> expected_out = new HashMap<String, String>();
|
||||
expected_out.put("ack", "false");
|
||||
expected_out.put("a0", "false");
|
||||
expected_out.put("a1", "false");
|
||||
expected_out.put("b0", "false");
|
||||
expected_out.put("b1", "false");
|
||||
expected_out.put("c0", "false");
|
||||
expected_out.put("c1", "false");
|
||||
|
||||
Assert.assertTrue(expected_out.keySet().equals(lpn.getAllOutputs().keySet()));
|
||||
Assert.assertTrue(expected_out.equals(lpn.getAllOutputs()));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void Test_booleanSize(){
|
||||
Assert.assertEquals(11, lpn.getBooleans().size());
|
||||
|
||||
}
|
||||
|
||||
@Test
|
||||
public void Test_booleans(){
|
||||
Map<String, String> expected_bool = new HashMap<String, String>();
|
||||
expected_bool.put("req", "false");
|
||||
expected_bool.put("ack", "false");
|
||||
expected_bool.put("a0", "false");
|
||||
expected_bool.put("a1", "false");
|
||||
expected_bool.put("b0", "false");
|
||||
expected_bool.put("b1", "false");
|
||||
expected_bool.put("c0", "false");
|
||||
expected_bool.put("c1", "false");
|
||||
expected_bool.put("lfsr_instance__feedback", "false");
|
||||
expected_bool.put("lfsr_instance__state0", "false");
|
||||
expected_bool.put("lfsr_instance__state1", "false");
|
||||
|
||||
Assert.assertTrue(expected_bool.keySet().equals(lpn.getBooleans().keySet()));
|
||||
Assert.assertTrue(expected_bool.equals(lpn.getBooleans()));
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,92 @@
|
|||
package edu.utah.ece.async.ibiosim.synthesis.VerilogCompiler;
|
||||
|
||||
import java.io.IOException;
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
|
||||
import javax.xml.stream.XMLStreamException;
|
||||
|
||||
import org.junit.Assert;
|
||||
import org.junit.BeforeClass;
|
||||
import org.junit.Test;
|
||||
import org.sbml.jsbml.SBMLException;
|
||||
import org.sbml.jsbml.text.parser.ParseException;
|
||||
import org.sbolstandard.core2.SBOLValidationException;
|
||||
|
||||
import edu.utah.ece.async.ibiosim.dataModels.util.exceptions.BioSimException;
|
||||
import edu.utah.ece.async.lema.verification.lpn.LPN;
|
||||
|
||||
/**
|
||||
* Test lpn output for multiple of three design.
|
||||
* @author Tramy Nguyen
|
||||
*
|
||||
*/
|
||||
public class LPNExample5_Test {
|
||||
|
||||
private static LPN lpn;
|
||||
|
||||
@BeforeClass
|
||||
public static void setupTest() throws XMLStreamException, IOException, BioSimException, VerilogCompilerException, SBMLException, ParseException, SBOLValidationException {
|
||||
|
||||
CompilerOptions setupOpt = new CompilerOptions();
|
||||
setupOpt.addVerilogFile(CompilerTestSuite.verilogMultThree_impFile);
|
||||
setupOpt.addVerilogFile(CompilerTestSuite.verilogMultThree_tbFile);
|
||||
|
||||
VerilogCompiler compiledVerilog = VerilogRunner.compile(setupOpt.getVerilogFiles());
|
||||
compiledVerilog.compileVerilogOutputData(true);
|
||||
compiledVerilog.generateLPN("multthree_imp", "multThree_testbench", CompilerTestSuite.outputDirectory);
|
||||
|
||||
lpn = compiledVerilog.getLPN();
|
||||
}
|
||||
|
||||
@Test
|
||||
public void Test_inputSize(){
|
||||
Assert.assertEquals(2, lpn.getAllInputs().size());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void Test_inputs(){
|
||||
Map<String, String> expected_in = new HashMap<String, String>();
|
||||
expected_in.put("bit0", "false");
|
||||
expected_in.put("bit1", "false");
|
||||
|
||||
Assert.assertTrue(expected_in.keySet().equals(lpn.getAllInputs().keySet()));
|
||||
Assert.assertTrue(expected_in.equals(lpn.getAllInputs()));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void Test_outputSize(){
|
||||
Assert.assertEquals(2, lpn.getAllOutputs().size());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void Test_outputs(){
|
||||
Map<String, String> expected_out = new HashMap<String, String>();
|
||||
expected_out.put("parity0", "false");
|
||||
expected_out.put("parity1", "false");
|
||||
|
||||
Assert.assertTrue(expected_out.keySet().equals(lpn.getAllOutputs().keySet()));
|
||||
Assert.assertTrue(expected_out.equals(lpn.getAllOutputs()));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void Test_booleanSize(){
|
||||
Assert.assertEquals(7, lpn.getBooleans().size());
|
||||
|
||||
}
|
||||
|
||||
@Test
|
||||
public void Test_booleans(){
|
||||
Map<String, String> expected_bool = new HashMap<String, String>();
|
||||
expected_bool.put("bit0", "false");
|
||||
expected_bool.put("bit1", "false");
|
||||
expected_bool.put("parity0", "false");
|
||||
expected_bool.put("parity1", "false");
|
||||
expected_bool.put("mt_instance__state0", "false");
|
||||
expected_bool.put("mt_instance__state1", "false");
|
||||
expected_bool.put("mt_instance__temp", "false");
|
||||
|
||||
Assert.assertTrue(expected_bool.keySet().equals(lpn.getBooleans().keySet()));
|
||||
Assert.assertTrue(expected_bool.equals(lpn.getBooleans()));
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,102 @@
|
|||
package edu.utah.ece.async.ibiosim.synthesis.VerilogCompiler;
|
||||
|
||||
import java.io.IOException;
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
|
||||
import javax.xml.stream.XMLStreamException;
|
||||
|
||||
import org.junit.Assert;
|
||||
import org.junit.BeforeClass;
|
||||
import org.junit.Test;
|
||||
import org.sbml.jsbml.SBMLException;
|
||||
import org.sbml.jsbml.text.parser.ParseException;
|
||||
import org.sbolstandard.core2.SBOLValidationException;
|
||||
|
||||
import edu.utah.ece.async.ibiosim.dataModels.util.exceptions.BioSimException;
|
||||
import edu.utah.ece.async.lema.verification.lpn.LPN;
|
||||
|
||||
/**
|
||||
* Test lpn output for scanflop design
|
||||
* @author Tramy Nguyen
|
||||
*
|
||||
*/
|
||||
public class LPNExample6_Test {
|
||||
|
||||
private static LPN lpn;
|
||||
|
||||
@BeforeClass
|
||||
public static void setupTest() throws XMLStreamException, IOException, BioSimException, VerilogCompilerException, SBMLException, ParseException, SBOLValidationException {
|
||||
|
||||
CompilerOptions setupOpt = new CompilerOptions();
|
||||
setupOpt.addVerilogFile(CompilerTestSuite.verilogScanflop_impFile);
|
||||
setupOpt.addVerilogFile(CompilerTestSuite.verilogScanflop_tbFile);
|
||||
|
||||
VerilogCompiler compiledVerilog = VerilogRunner.compile(setupOpt.getVerilogFiles());
|
||||
compiledVerilog.compileVerilogOutputData(true);
|
||||
compiledVerilog.generateLPN("scanflop_imp", "scanflop_testbench", CompilerTestSuite.outputDirectory);
|
||||
|
||||
lpn = compiledVerilog.getLPN();
|
||||
}
|
||||
|
||||
@Test
|
||||
public void Test_inputSize(){
|
||||
Assert.assertEquals(7, lpn.getAllInputs().size());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void Test_inputs(){
|
||||
Map<String, String> expected_in = new HashMap<String, String>();
|
||||
expected_in.put("in1_0", "false");
|
||||
expected_in.put("in1_1", "false");
|
||||
expected_in.put("in2_0", "false");
|
||||
expected_in.put("in2_1", "false");
|
||||
expected_in.put("sel0", "false");
|
||||
expected_in.put("sel1", "false");
|
||||
expected_in.put("req", "false");
|
||||
|
||||
Assert.assertTrue(expected_in.keySet().equals(lpn.getAllInputs().keySet()));
|
||||
Assert.assertTrue(expected_in.equals(lpn.getAllInputs()));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void Test_outputSize(){
|
||||
Assert.assertEquals(3, lpn.getAllOutputs().size());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void Test_outputs(){
|
||||
Map<String, String> expected_out = new HashMap<String, String>();
|
||||
expected_out.put("q1", "false");
|
||||
expected_out.put("q0", "false");
|
||||
expected_out.put("ack", "false");
|
||||
|
||||
Assert.assertTrue(expected_out.keySet().equals(lpn.getAllOutputs().keySet()));
|
||||
Assert.assertTrue(expected_out.equals(lpn.getAllOutputs()));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void Test_booleanSize(){
|
||||
Assert.assertEquals(11, lpn.getBooleans().size());
|
||||
|
||||
}
|
||||
|
||||
@Test
|
||||
public void Test_booleans(){
|
||||
Map<String, String> expected_bool = new HashMap<String, String>();
|
||||
expected_bool.put("in1_0", "false");
|
||||
expected_bool.put("in1_1", "false");
|
||||
expected_bool.put("in2_0", "false");
|
||||
expected_bool.put("in2_1", "false");
|
||||
expected_bool.put("sel0", "false");
|
||||
expected_bool.put("sel1", "false");
|
||||
expected_bool.put("req", "false");
|
||||
expected_bool.put("q1", "false");
|
||||
expected_bool.put("q0", "false");
|
||||
expected_bool.put("ack", "false");
|
||||
expected_bool.put("sf_instance__state", "false");
|
||||
|
||||
Assert.assertTrue(expected_bool.keySet().equals(lpn.getBooleans().keySet()));
|
||||
Assert.assertTrue(expected_bool.equals(lpn.getBooleans()));
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,89 @@
|
|||
package edu.utah.ece.async.ibiosim.synthesis.VerilogCompiler;
|
||||
|
||||
import java.io.IOException;
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
|
||||
import javax.xml.stream.XMLStreamException;
|
||||
|
||||
import org.junit.Assert;
|
||||
import org.junit.BeforeClass;
|
||||
import org.junit.Test;
|
||||
import org.sbml.jsbml.SBMLException;
|
||||
import org.sbml.jsbml.text.parser.ParseException;
|
||||
import org.sbolstandard.core2.SBOLValidationException;
|
||||
|
||||
import edu.utah.ece.async.ibiosim.dataModels.util.exceptions.BioSimException;
|
||||
import edu.utah.ece.async.lema.verification.lpn.LPN;
|
||||
|
||||
/**
|
||||
* Test lpn output for srlatch design
|
||||
* @author Tramy Nguyen
|
||||
*
|
||||
*/
|
||||
public class LPNExample7_Test {
|
||||
|
||||
private static LPN lpn;
|
||||
|
||||
@BeforeClass
|
||||
public static void setupTest() throws XMLStreamException, IOException, BioSimException, VerilogCompilerException, SBMLException, ParseException, SBOLValidationException {
|
||||
|
||||
CompilerOptions setupOpt = new CompilerOptions();
|
||||
setupOpt.addVerilogFile(CompilerTestSuite.verilogSRLatch_impFile);
|
||||
setupOpt.addVerilogFile(CompilerTestSuite.verilogSRLatch_tbFile);
|
||||
|
||||
VerilogCompiler compiledVerilog = VerilogRunner.compile(setupOpt.getVerilogFiles());
|
||||
compiledVerilog.compileVerilogOutputData(true);
|
||||
compiledVerilog.generateLPN("srlatch_imp", "srlatch_testbench", CompilerTestSuite.outputDirectory);
|
||||
|
||||
lpn = compiledVerilog.getLPN();
|
||||
}
|
||||
|
||||
@Test
|
||||
public void Test_inputSize(){
|
||||
Assert.assertEquals(2, lpn.getAllInputs().size());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void Test_inputs(){
|
||||
Map<String, String> expected_in = new HashMap<String, String>();
|
||||
expected_in.put("s", "false");
|
||||
expected_in.put("r", "false");
|
||||
|
||||
Assert.assertTrue(expected_in.keySet().equals(lpn.getAllInputs().keySet()));
|
||||
Assert.assertTrue(expected_in.equals(lpn.getAllInputs()));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void Test_outputSize(){
|
||||
Assert.assertEquals(2, lpn.getAllOutputs().size());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void Test_outputs(){
|
||||
Map<String, String> expected_out = new HashMap<String, String>();
|
||||
expected_out.put("q", "false");
|
||||
expected_out.put("ack", "false");
|
||||
|
||||
Assert.assertTrue(expected_out.keySet().equals(lpn.getAllOutputs().keySet()));
|
||||
Assert.assertTrue(expected_out.equals(lpn.getAllOutputs()));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void Test_booleanSize(){
|
||||
Assert.assertEquals(4, lpn.getBooleans().size());
|
||||
|
||||
}
|
||||
|
||||
@Test
|
||||
public void Test_booleans(){
|
||||
Map<String, String> expected_bool = new HashMap<String, String>();
|
||||
expected_bool.put("s", "false");
|
||||
expected_bool.put("r", "false");
|
||||
expected_bool.put("q", "false");
|
||||
expected_bool.put("ack", "false");
|
||||
|
||||
Assert.assertTrue(expected_bool.keySet().equals(lpn.getBooleans().keySet()));
|
||||
Assert.assertTrue(expected_bool.equals(lpn.getBooleans()));
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,237 @@
|
|||
package edu.utah.ece.async.ibiosim.synthesis.VerilogCompiler;
|
||||
|
||||
import java.io.IOException;
|
||||
|
||||
import javax.xml.stream.XMLStreamException;
|
||||
|
||||
import org.junit.Assert;
|
||||
import org.junit.BeforeClass;
|
||||
import org.junit.Test;
|
||||
import org.sbml.jsbml.InitialAssignment;
|
||||
import org.sbml.jsbml.Model;
|
||||
import org.sbml.jsbml.Parameter;
|
||||
import org.sbml.jsbml.ext.comp.CompModelPlugin;
|
||||
import org.sbml.jsbml.ext.comp.CompSBasePlugin;
|
||||
import org.sbml.jsbml.ext.comp.Port;
|
||||
import org.sbml.jsbml.ext.comp.ReplacedBy;
|
||||
import org.sbml.jsbml.ext.comp.ReplacedElement;
|
||||
import org.sbml.jsbml.ext.comp.Submodel;
|
||||
import org.sbml.jsbml.text.parser.ParseException;
|
||||
import org.sbolstandard.core2.SBOLConversionException;
|
||||
import org.sbolstandard.core2.SBOLValidationException;
|
||||
|
||||
import edu.utah.ece.async.ibiosim.dataModels.util.exceptions.BioSimException;
|
||||
|
||||
/**
|
||||
* Test replacement and replacedBy objects for SBML conversion
|
||||
* @author Tramy Nguyen
|
||||
*
|
||||
*/
|
||||
public class SBMLExample11_Test {
|
||||
|
||||
private static Model tbModel, impModel;
|
||||
|
||||
@BeforeClass
|
||||
public static void setupTest() throws ParseException, SBOLValidationException, VerilogCompilerException, XMLStreamException, IOException, BioSimException, org.apache.commons.cli.ParseException, SBOLConversionException {
|
||||
CompilerOptions setupOpt = new CompilerOptions();
|
||||
setupOpt.addVerilogFile(CompilerTestSuite.verilogFilter_impFile);
|
||||
setupOpt.addVerilogFile(CompilerTestSuite.verilogFilter_tbFile);
|
||||
VerilogCompiler compiledVerilog = VerilogRunner.compile(setupOpt.getVerilogFiles());
|
||||
compiledVerilog.compileVerilogOutputData(setupOpt.isOutputFlatModel());
|
||||
|
||||
WrappedSBML tbWrapper = compiledVerilog.getSBMLWrapper("filter_testbench");
|
||||
Assert.assertNotNull(tbWrapper);
|
||||
tbModel = tbWrapper.getModel();
|
||||
Assert.assertNotNull(tbModel);
|
||||
Assert.assertEquals("filter_testbench", tbModel.getId());
|
||||
|
||||
WrappedSBML impWrapper = compiledVerilog.getSBMLWrapper("filter_imp");
|
||||
Assert.assertNotNull(impWrapper);
|
||||
impModel = impWrapper.getModel();
|
||||
Assert.assertNotNull(impModel);
|
||||
Assert.assertEquals("filter_imp", impModel.getId());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void TestSBML_tbPorts() {
|
||||
CompModelPlugin compPlugin = (CompModelPlugin) tbModel.getPlugin("comp");
|
||||
Assert.assertEquals(0, compPlugin.getNumPorts());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void TestSBML_impPortSize() {
|
||||
CompModelPlugin compPlugin = (CompModelPlugin) impModel.getPlugin("comp");
|
||||
Assert.assertEquals(3, compPlugin.getNumPorts());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void TestSBML_impPorts() {
|
||||
CompModelPlugin compPort = (CompModelPlugin) impModel.getPlugin("comp");
|
||||
for(Port port : compPort.getListOfPorts()){
|
||||
if(port.getId().equals("filter_imp__Start")) {
|
||||
Assert.assertEquals("Start", port.getIdRef());
|
||||
}
|
||||
else if(port.getId().equals("filter_imp__Sensor")) {
|
||||
Assert.assertEquals("Sensor", port.getIdRef());
|
||||
}
|
||||
else if(port.getId().equals("filter_imp__Actuator")) {
|
||||
Assert.assertEquals("Actuator", port.getIdRef());
|
||||
}
|
||||
else {
|
||||
Assert.fail("Unexpected port found with the following id: " + port.getId());
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@Test
|
||||
public void TestSBML_tbSubmoduleSize() {
|
||||
CompModelPlugin compPlugin = (CompModelPlugin) tbModel.getPlugin("comp");
|
||||
Assert.assertEquals(3, compPlugin.getNumSubmodels());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void TestSBML_tbSubmodule() {
|
||||
CompModelPlugin modelPlugin = (CompModelPlugin) tbModel.getPlugin("comp");
|
||||
for(Submodel model : modelPlugin.getListOfSubmodels()){
|
||||
Assert.assertTrue(model.getId().equals("cell1") || model.getId().equals("cell2") || model.getId().equals("cell3"));
|
||||
Assert.assertEquals("filter_imp", model.getModelRef());
|
||||
}
|
||||
}
|
||||
|
||||
@Test
|
||||
public void TestSBML_impParameterSize() {
|
||||
Assert.assertEquals(10, impModel.getNumParameters());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void TestSBML_tbParameterSize() {
|
||||
Assert.assertEquals(36, tbModel.getNumParameters());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void Test_tbSensorReplacement() {
|
||||
Parameter sensor = tbModel.getParameter("Sensor");
|
||||
Assert.assertNotNull(sensor);
|
||||
|
||||
Assert.assertTrue(sensor.isSetPlugin("comp"));
|
||||
CompSBasePlugin sbasePlugin = (CompSBasePlugin)sensor.getPlugin("comp");
|
||||
|
||||
Assert.assertEquals(3, sbasePlugin.getNumReplacedElements());
|
||||
for(ReplacedElement sensorReplacement : sbasePlugin.getListOfReplacedElements()) {
|
||||
Assert.assertEquals("filter_imp__Sensor", sensorReplacement.getPortRef());
|
||||
boolean expectedRef = sensorReplacement.getSubmodelRef().equals("cell1") || sensorReplacement.getSubmodelRef().equals("cell2") || sensorReplacement.getSubmodelRef().equals("cell3");
|
||||
Assert.assertTrue(expectedRef);
|
||||
}
|
||||
}
|
||||
|
||||
@Test
|
||||
public void Test_tbStartReplacement() {
|
||||
Parameter sensor = tbModel.getParameter("Start");
|
||||
Assert.assertNotNull(sensor);
|
||||
|
||||
Assert.assertTrue(sensor.isSetPlugin("comp"));
|
||||
CompSBasePlugin sbasePlugin = (CompSBasePlugin)sensor.getPlugin("comp");
|
||||
|
||||
Assert.assertEquals(1, sbasePlugin.getNumReplacedElements());
|
||||
ReplacedElement startReplacement = sbasePlugin.getReplacedElement(0);
|
||||
Assert.assertNotNull(startReplacement);
|
||||
Assert.assertEquals("filter_imp__Start", startReplacement.getPortRef());
|
||||
Assert.assertEquals("cell1", startReplacement.getSubmodelRef());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void Test_tbActuatorReplacedBy() {
|
||||
Parameter actuator = tbModel.getParameter("Actuator");
|
||||
Assert.assertNotNull(actuator);
|
||||
|
||||
Assert.assertTrue(actuator.isSetPlugin("comp"));
|
||||
CompSBasePlugin sbasePlugin = (CompSBasePlugin) actuator.getPlugin("comp");
|
||||
|
||||
ReplacedBy actuatorReplacedBy = sbasePlugin.getReplacedBy();
|
||||
Assert.assertEquals("filter_imp__Actuator", actuatorReplacedBy.getPortRef());
|
||||
Assert.assertTrue(actuatorReplacedBy.getSubmodelRef().equals("cell3"));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void Test_tbQS1ReplacedBy() {
|
||||
Parameter QS1 = tbModel.getParameter("QS1");
|
||||
Assert.assertNotNull(QS1);
|
||||
|
||||
Assert.assertTrue(QS1.isSetPlugin("comp"));
|
||||
CompSBasePlugin sbasePlugin = (CompSBasePlugin) QS1.getPlugin("comp");
|
||||
|
||||
ReplacedBy actuatorReplacedBy = sbasePlugin.getReplacedBy();
|
||||
Assert.assertEquals("filter_imp__Actuator", actuatorReplacedBy.getPortRef());
|
||||
Assert.assertTrue(actuatorReplacedBy.getSubmodelRef().equals("cell1"));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void Test_tbQS2ReplacedBy() {
|
||||
Parameter QS2 = tbModel.getParameter("QS2");
|
||||
Assert.assertNotNull(QS2);
|
||||
|
||||
Assert.assertTrue(QS2.isSetPlugin("comp"));
|
||||
CompSBasePlugin sbasePlugin = (CompSBasePlugin) QS2.getPlugin("comp");
|
||||
|
||||
ReplacedBy actuatorReplacedBy = sbasePlugin.getReplacedBy();
|
||||
Assert.assertEquals("filter_imp__Actuator", actuatorReplacedBy.getPortRef());
|
||||
Assert.assertTrue(actuatorReplacedBy.getSubmodelRef().equals("cell2"));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void Test_tbQS1Replacement() {
|
||||
Parameter qs1 = tbModel.getParameter("QS1");
|
||||
Assert.assertNotNull(qs1);
|
||||
|
||||
Assert.assertTrue(qs1.isSetPlugin("comp"));
|
||||
CompSBasePlugin sbasePlugin = (CompSBasePlugin)qs1.getPlugin("comp");
|
||||
|
||||
Assert.assertEquals(1, sbasePlugin.getNumReplacedElements());
|
||||
ReplacedElement startReplacement = sbasePlugin.getReplacedElement(0);
|
||||
Assert.assertNotNull(startReplacement);
|
||||
Assert.assertEquals("filter_imp__Start", startReplacement.getPortRef());
|
||||
Assert.assertEquals("cell2", startReplacement.getSubmodelRef());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void Test_tbQS2Replacement() {
|
||||
Parameter qs2 = tbModel.getParameter("QS2");
|
||||
Assert.assertNotNull(qs2);
|
||||
|
||||
Assert.assertTrue(qs2.isSetPlugin("comp"));
|
||||
CompSBasePlugin sbasePlugin = (CompSBasePlugin)qs2.getPlugin("comp");
|
||||
|
||||
Assert.assertEquals(1, sbasePlugin.getNumReplacedElements());
|
||||
ReplacedElement startReplacement = sbasePlugin.getReplacedElement(0);
|
||||
Assert.assertNotNull(startReplacement);
|
||||
Assert.assertEquals("filter_imp__Start", startReplacement.getPortRef());
|
||||
Assert.assertEquals("cell3", startReplacement.getSubmodelRef());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void TestSBML_impInitialAssignmentSize() {
|
||||
Assert.assertEquals(1, impModel.getNumInitialAssignments());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void TestSBML_tbInitialAssignmentSize() {
|
||||
Assert.assertEquals(2, tbModel.getNumInitialAssignments());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void TestSBML_impInitialAssignment() {
|
||||
InitialAssignment assign = impModel.getInitialAssignment(0);
|
||||
Assert.assertEquals("Actuator", assign.getVariable());
|
||||
Assert.assertTrue(assign.getMath().isInteger());
|
||||
Assert.assertEquals(0, assign.getMath().getInteger());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void TestSBML_tbInitialAssignment() {
|
||||
for(InitialAssignment assign : tbModel.getListOfInitialAssignments()){
|
||||
Assert.assertTrue(assign.getVariable().equals("Start") || assign.getVariable().equals("Sensor"));
|
||||
Assert.assertTrue(assign.getMath().isInteger());
|
||||
Assert.assertEquals(0, assign.getMath().getInteger());
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -1,6 +1,5 @@
|
|||
package edu.utah.ece.async.ibiosim.synthesis.VerilogCompiler;
|
||||
|
||||
import static org.junit.Assert.fail;
|
||||
|
||||
import java.io.IOException;
|
||||
import java.net.URI;
|
||||
|
|
|
|||
|
|
@ -0,0 +1,93 @@
|
|||
package edu.utah.ece.async.ibiosim.synthesis.VerilogCompiler;
|
||||
|
||||
import java.io.IOException;
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
|
||||
import javax.xml.stream.XMLStreamException;
|
||||
|
||||
import org.junit.Assert;
|
||||
import org.junit.BeforeClass;
|
||||
import org.junit.Test;
|
||||
import org.sbml.jsbml.text.parser.ParseException;
|
||||
import org.sbolstandard.core2.SBOLConversionException;
|
||||
import org.sbolstandard.core2.SBOLValidationException;
|
||||
|
||||
import edu.utah.ece.async.ibiosim.dataModels.util.exceptions.BioSimException;
|
||||
import edu.utah.ece.async.ibiosim.synthesis.VerilogCompiler.VerilogConstructs.VerilogModule;
|
||||
import edu.utah.ece.async.ibiosim.synthesis.VerilogCompiler.VerilogConstructs.VerilogModuleInstance;
|
||||
|
||||
/**
|
||||
* Test multiple submodules referencing the same verilog design specification.
|
||||
* @author Tramy Nguyen
|
||||
*
|
||||
*/
|
||||
public class VerilogParserFilter_Test {
|
||||
private static VerilogModule verilog_tb;
|
||||
|
||||
@BeforeClass
|
||||
public static void setupTest() throws ParseException, SBOLValidationException, VerilogCompilerException, XMLStreamException, IOException, BioSimException, org.apache.commons.cli.ParseException, SBOLConversionException {
|
||||
CompilerOptions setupOpt = new CompilerOptions();
|
||||
setupOpt.addVerilogFile(CompilerTestSuite.verilogFilter_impFile);
|
||||
setupOpt.addVerilogFile(CompilerTestSuite.verilogFilter_tbFile);
|
||||
|
||||
VerilogCompiler compiledVerilog = VerilogRunner.compile(setupOpt.getVerilogFiles());
|
||||
Map<String, VerilogModule> moduleList = compiledVerilog.getVerilogModules();
|
||||
Assert.assertEquals(2, moduleList.size());
|
||||
|
||||
verilog_tb = moduleList.get("filter_testbench");
|
||||
Assert.assertNotNull(verilog_tb);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void Test_tbSubmodelSize() {
|
||||
Assert.assertEquals(3, verilog_tb.getNumSubmodules());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void Test_tbSubmodelNames() {
|
||||
for(VerilogModuleInstance module : verilog_tb.getSubmodules()){
|
||||
Assert.assertTrue(module.getSubmoduleId().equals("cell1") || module.getSubmoduleId().equals("cell2") || module.getSubmoduleId().equals("cell3"));
|
||||
Assert.assertEquals("filter_imp", module.getModuleReference());
|
||||
}
|
||||
}
|
||||
|
||||
@Test
|
||||
public void Test_tb_subMod1Connections() {
|
||||
VerilogModuleInstance submodule = verilog_tb.getSubmodule(0);
|
||||
|
||||
Map<String, String> expectedConnections = new HashMap<>();
|
||||
expectedConnections.put("Start", "Start");
|
||||
expectedConnections.put("Sensor", "Sensor");
|
||||
expectedConnections.put("QS1", "Actuator");
|
||||
|
||||
Assert.assertTrue(expectedConnections.keySet().equals(submodule.getNamedConnections().keySet()));
|
||||
Assert.assertTrue(expectedConnections.equals(submodule.getNamedConnections()));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void Test_tb_subMod2Connections() {
|
||||
VerilogModuleInstance submodule = verilog_tb.getSubmodule(1);
|
||||
|
||||
Map<String, String> expectedConnections = new HashMap<>();
|
||||
expectedConnections.put("QS1", "Start");
|
||||
expectedConnections.put("Sensor", "Sensor");
|
||||
expectedConnections.put("QS2", "Actuator");
|
||||
|
||||
Assert.assertTrue(expectedConnections.keySet().equals(submodule.getNamedConnections().keySet()));
|
||||
Assert.assertTrue(expectedConnections.equals(submodule.getNamedConnections()));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void Test_tb_subMod3Connections() {
|
||||
VerilogModuleInstance submodule = verilog_tb.getSubmodule(2);
|
||||
|
||||
Map<String, String> expectedConnections = new HashMap<>();
|
||||
expectedConnections.put("QS2", "Start");
|
||||
expectedConnections.put("Sensor", "Sensor");
|
||||
expectedConnections.put("Actuator", "Actuator");
|
||||
|
||||
Assert.assertTrue(expectedConnections.keySet().equals(submodule.getNamedConnections().keySet()));
|
||||
Assert.assertTrue(expectedConnections.equals(submodule.getNamedConnections()));
|
||||
}
|
||||
}
|
||||
|
|
@ -29,7 +29,7 @@ public class Workflow_Test {
|
|||
String files = String.join(" ", CompilerTestSuite.verilogEvenZero_impFile, CompilerTestSuite.verilogEvenZero_tbFile);
|
||||
String[] cmd = {"-v", files,
|
||||
"-imp", "evenzeroes_imp", "-tb", "evenzeroes_testbench",
|
||||
"-sbml", "-flat", "-od", CompilerTestSuite.outputDirectory};
|
||||
"-sbml", "-flat", "-od", CompilerTestSuite.outputDirectory, "-o", "evenzeroes_imp_evenzeroes_testbench_flattened"};
|
||||
|
||||
VerilogRunner.main(cmd);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -15,4 +15,5 @@ module init_block(in0, out0);
|
|||
state = 1'b1;
|
||||
end
|
||||
|
||||
|
||||
endmodule
|
||||
File diff suppressed because it is too large
Load diff
File diff suppressed because one or more lines are too long
|
|
@ -31,11 +31,21 @@
|
|||
</functionDefinition>
|
||||
</listOfFunctionDefinitions>
|
||||
<listOfParameters>
|
||||
<parameter constant="false" id="a0" sboTerm="SBO:0000602" value="0"/>
|
||||
<parameter constant="false" id="a1" sboTerm="SBO:0000602" value="0"/>
|
||||
<parameter constant="false" id="b0" sboTerm="SBO:0000602" value="0"/>
|
||||
<parameter constant="false" id="b1" sboTerm="SBO:0000602" value="0"/>
|
||||
<parameter constant="false" id="ack" sboTerm="SBO:0000602" value="0"/>
|
||||
<parameter constant="false" id="a0" sboTerm="SBO:0000602" value="0">
|
||||
<comp:replacedBy xmlns:comp="http://www.sbml.org/sbml/level3/version1/comp/version1" comp:portRef="counter_imp__a0" comp:submodelRef="counter_instance"/>
|
||||
</parameter>
|
||||
<parameter constant="false" id="a1" sboTerm="SBO:0000602" value="0">
|
||||
<comp:replacedBy xmlns:comp="http://www.sbml.org/sbml/level3/version1/comp/version1" comp:portRef="counter_imp__a1" comp:submodelRef="counter_instance"/>
|
||||
</parameter>
|
||||
<parameter constant="false" id="b0" sboTerm="SBO:0000602" value="0">
|
||||
<comp:replacedBy xmlns:comp="http://www.sbml.org/sbml/level3/version1/comp/version1" comp:portRef="counter_imp__b0" comp:submodelRef="counter_instance"/>
|
||||
</parameter>
|
||||
<parameter constant="false" id="b1" sboTerm="SBO:0000602" value="0">
|
||||
<comp:replacedBy xmlns:comp="http://www.sbml.org/sbml/level3/version1/comp/version1" comp:portRef="counter_imp__b1" comp:submodelRef="counter_instance"/>
|
||||
</parameter>
|
||||
<parameter constant="false" id="ack" sboTerm="SBO:0000602" value="0">
|
||||
<comp:replacedBy xmlns:comp="http://www.sbml.org/sbml/level3/version1/comp/version1" comp:portRef="counter_imp__ack" comp:submodelRef="counter_instance"/>
|
||||
</parameter>
|
||||
<parameter constant="false" id="req" sboTerm="SBO:0000602" value="0">
|
||||
<comp:listOfReplacedElements xmlns:comp="http://www.sbml.org/sbml/level3/version1/comp/version1">
|
||||
<comp:replacedElement comp:portRef="counter_imp__req" comp:submodelRef="counter_instance"/>
|
||||
|
|
|
|||
|
|
@ -1,9 +1,9 @@
|
|||
.inputs bit1 bit0
|
||||
.outputs
|
||||
.internal parity1 parity0 ez_instance__state ez_instance__parity0 ez_instance__parity1
|
||||
.outputs parity1 parity0
|
||||
.internal ez_instance__state
|
||||
.dummy ez_instance__assign_0 delay_4 assign_4 delay_5 delay_6 assign_0 assign_1 assign_2 assign_3 delay_0 delay_1 delay_2 delay_3 if_3 if_2 ez_instance__assign_5 ez_instance__assign_4 ez_instance__assign_3 ez_instance__assign_2 ez_instance__assign_1 if_1 if_0 ez_instance__delay_6 ez_instance__delay_5 ez_instance__delay_4 ez_instance__delay_3 ez_instance__if_4 ez_instance__if_3 ez_instance__if_5 ez_instance__delay_2 ez_instance__delay_1 ez_instance__delay_0 ez_instance__T6 ez_instance__T5 ez_instance__wait_2 ez_instance__wait_1 ez_instance__wait_0 ez_instance__if_0 ez_instance__if_2 ez_instance__if_1 T0 T1 T2 T3 T4 ez_instance__T4 ez_instance__T3 ez_instance__T2 ez_instance__T1 ez_instance__T0 wait_1 wait_0
|
||||
#|.places ez_instance__P9 ez_instance__P8 ez_instance__P23 ez_instance__P7 ez_instance__P24 ez_instance__P6 ez_instance__P21 ez_instance__P5 ez_instance__P22 ez_instance__P4 ez_instance__P3 ez_instance__P2 ez_instance__P25 P20 ez_instance__P1 ez_instance__P20 P0 P1 P2 ez_instance__P18 P3 ez_instance__P19 P4 P5 P6 P7 P8 ez_instance__P12 P9 ez_instance__P13 ez_instance__P10 ez_instance__P11 ez_instance__P16 ez_instance__P17 P10 ez_instance__P14 ez_instance__P15 P12 ez_instance__P0 P11 P14 P13 P16 P15 P18 P17 P19
|
||||
#@.init_state [0000000]
|
||||
#@.init_state [00000]
|
||||
.graph
|
||||
ez_instance__P5 ez_instance__assign_0
|
||||
ez_instance__assign_0 ez_instance__P6
|
||||
|
|
@ -110,8 +110,8 @@ wait_1 P19
|
|||
P3 wait_0
|
||||
wait_0 P10
|
||||
.marking {P0 ez_instance__P0 }
|
||||
#@.enablings {<ez_instance__assign_0=[true]><delay_4=[true]><assign_4=[true]><delay_5=[true]><delay_6=[true]><assign_0=[true]><assign_1=[true]><assign_2=[true]><assign_3=[true]><delay_0=[true]><delay_1=[true]><delay_2=[true]><delay_3=[true]><if_3=[~(bit0)]><if_2=[bit0]><ez_instance__assign_5=[true]><ez_instance__assign_4=[true]><ez_instance__assign_3=[true]><ez_instance__assign_2=[true]><ez_instance__assign_1=[true]><if_1=[true]><if_0=[true]><ez_instance__delay_6=[true]><ez_instance__delay_5=[true]><ez_instance__delay_4=[true]><ez_instance__delay_3=[true]><ez_instance__if_4=[ez_instance__parity0]><ez_instance__if_3=[~(ez_instance__parity1)]><ez_instance__if_5=[~(ez_instance__parity0)]><ez_instance__delay_2=[true]><ez_instance__delay_1=[true]><ez_instance__delay_0=[true]><ez_instance__T6=[true]><ez_instance__T5=[true]><ez_instance__wait_2=[(~(bit0=1)&~(bit1=1))]><ez_instance__wait_1=[((ez_instance__parity0&ez_instance__state)|(ez_instance__parity1&~(ez_instance__state=1)))]><ez_instance__wait_0=[(bit0|bit1)]><ez_instance__if_0=[((~(ez_instance__state=1)&bit1)|(ez_instance__state&bit0))]><ez_instance__if_2=[ez_instance__parity1]><ez_instance__if_1=[~(((~(ez_instance__state=1)&bit1)|(ez_instance__state&bit0)))]><T0=[true]><T1=[true]><T2=[true]><T3=[true]><T4=[true]><ez_instance__T4=[true]><ez_instance__T3=[true]><ez_instance__T2=[true]><ez_instance__T1=[true]><ez_instance__T0=[true]><wait_1=[(~(parity0=1)&~(parity1=1))]><wait_0=[(parity0|parity1)]>}
|
||||
#@.enablings {<ez_instance__assign_0=[true]><delay_4=[true]><assign_4=[true]><delay_5=[true]><delay_6=[true]><assign_0=[true]><assign_1=[true]><assign_2=[true]><assign_3=[true]><delay_0=[true]><delay_1=[true]><delay_2=[true]><delay_3=[true]><if_3=[~(bit0)]><if_2=[bit0]><ez_instance__assign_5=[true]><ez_instance__assign_4=[true]><ez_instance__assign_3=[true]><ez_instance__assign_2=[true]><ez_instance__assign_1=[true]><if_1=[true]><if_0=[true]><ez_instance__delay_6=[true]><ez_instance__delay_5=[true]><ez_instance__delay_4=[true]><ez_instance__delay_3=[true]><ez_instance__if_4=[parity0]><ez_instance__if_3=[~(parity1)]><ez_instance__if_5=[~(parity0)]><ez_instance__delay_2=[true]><ez_instance__delay_1=[true]><ez_instance__delay_0=[true]><ez_instance__T6=[true]><ez_instance__T5=[true]><ez_instance__wait_2=[(~(bit0=1)&~(bit1=1))]><ez_instance__wait_1=[((parity0&ez_instance__state)|(parity1&~(ez_instance__state=1)))]><ez_instance__wait_0=[(bit0|bit1)]><ez_instance__if_0=[((~(ez_instance__state=1)&bit1)|(ez_instance__state&bit0))]><ez_instance__if_2=[parity1]><ez_instance__if_1=[~(((~(ez_instance__state=1)&bit1)|(ez_instance__state&bit0)))]><T0=[true]><T1=[true]><T2=[true]><T3=[true]><T4=[true]><ez_instance__T4=[true]><ez_instance__T3=[true]><ez_instance__T2=[true]><ez_instance__T1=[true]><ez_instance__T0=[true]><wait_1=[(~(parity0=1)&~(parity1=1))]><wait_0=[(parity0|parity1)]>}
|
||||
#@.delay_assignments {<delay_4=[5]><delay_5=[5]><delay_6=[5]><delay_0=[5]><delay_1=[5]><delay_2=[5]><delay_3=[5]><ez_instance__delay_6=[5]><ez_instance__delay_5=[5]><ez_instance__delay_4=[5]><ez_instance__delay_3=[5]><ez_instance__delay_2=[5]><ez_instance__delay_1=[5]><ez_instance__delay_0=[5]>}
|
||||
#@.boolean_assignments {<ez_instance__assign_0=[ez_instance__parity1:=1]><assign_4=[bit1:=0]><assign_1=[bit0:=1]><assign_2=[bit1:=1]><assign_3=[bit0:=0]><ez_instance__assign_5=[ez_instance__parity1:=0]><ez_instance__assign_4=[ez_instance__parity0:=0]><ez_instance__assign_3=[ez_instance__state:=1]><ez_instance__assign_2=[ez_instance__state:=0]><ez_instance__assign_1=[ez_instance__parity0:=1]>}
|
||||
#@.boolean_assignments {<ez_instance__assign_0=[parity1:=1]><assign_4=[bit1:=0]><assign_1=[bit0:=1]><assign_2=[bit1:=1]><assign_3=[bit0:=0]><ez_instance__assign_5=[parity1:=0]><ez_instance__assign_4=[parity0:=0]><ez_instance__assign_3=[ez_instance__state:=1]><ez_instance__assign_2=[ez_instance__state:=0]><ez_instance__assign_1=[parity0:=1]>}
|
||||
#@.continuous
|
||||
.end
|
||||
|
|
|
|||
|
|
@ -27,10 +27,6 @@
|
|||
<listOfCompartments/>
|
||||
<listOfSpecies/>
|
||||
<listOfParameters>
|
||||
<parameter constant="false" id="parity0" metaid="iBioSim2" sboTerm="SBO:0000602" value="0">
|
||||
</parameter>
|
||||
<parameter constant="false" id="parity1" metaid="iBioSim3" sboTerm="SBO:0000602" value="0">
|
||||
</parameter>
|
||||
<parameter constant="false" id="bit0" metaid="iBioSim4" sboTerm="SBO:0000602" value="0">
|
||||
</parameter>
|
||||
<parameter constant="false" id="bit1" metaid="iBioSim5" sboTerm="SBO:0000602" value="0">
|
||||
|
|
@ -57,6 +53,8 @@
|
|||
<parameter constant="false" id="P18" metaid="iBioSim25" sboTerm="SBO:0000593" value="0"/>
|
||||
<parameter constant="false" id="P19" metaid="iBioSim26" sboTerm="SBO:0000593" value="0"/>
|
||||
<parameter constant="false" id="P20" metaid="iBioSim27" sboTerm="SBO:0000593" value="0"/>
|
||||
<parameter constant="false" id="parity0" metaid="ez_instance___iBioSim4" sboTerm="SBO:0000602" value="0"/>
|
||||
<parameter constant="false" id="parity1" metaid="ez_instance___iBioSim5" sboTerm="SBO:0000602" value="0"/>
|
||||
<parameter constant="false" id="ez_instance__state" metaid="ez_instance__iBioSim6" sboTerm="SBO:0000602" value="0"/>
|
||||
<parameter constant="false" id="ez_instance__P0" metaid="ez_instance__iBioSim7" sboTerm="SBO:0000593" value="1"/>
|
||||
<parameter constant="false" id="ez_instance__P1" metaid="ez_instance__iBioSim8" sboTerm="SBO:0000593" value="0"/>
|
||||
|
|
|
|||
|
|
@ -31,8 +31,12 @@
|
|||
</functionDefinition>
|
||||
</listOfFunctionDefinitions>
|
||||
<listOfParameters>
|
||||
<parameter constant="false" id="parity0" sboTerm="SBO:0000602" value="0"/>
|
||||
<parameter constant="false" id="parity1" sboTerm="SBO:0000602" value="0"/>
|
||||
<parameter constant="false" id="parity0" sboTerm="SBO:0000602" value="0">
|
||||
<comp:replacedBy xmlns:comp="http://www.sbml.org/sbml/level3/version1/comp/version1" comp:portRef="evenzeroes_imp__parity0" comp:submodelRef="ez_instance"/>
|
||||
</parameter>
|
||||
<parameter constant="false" id="parity1" sboTerm="SBO:0000602" value="0">
|
||||
<comp:replacedBy xmlns:comp="http://www.sbml.org/sbml/level3/version1/comp/version1" comp:portRef="evenzeroes_imp__parity1" comp:submodelRef="ez_instance"/>
|
||||
</parameter>
|
||||
<parameter constant="false" id="bit0" sboTerm="SBO:0000602" value="0">
|
||||
<comp:listOfReplacedElements xmlns:comp="http://www.sbml.org/sbml/level3/version1/comp/version1">
|
||||
<comp:replacedElement comp:portRef="evenzeroes_imp__bit0" comp:submodelRef="ez_instance"/>
|
||||
|
|
|
|||
117
synthesis/src/test/resources/outputFiles/filter.lpn
Normal file
117
synthesis/src/test/resources/outputFiles/filter.lpn
Normal file
|
|
@ -0,0 +1,117 @@
|
|||
.inputs Start Sensor
|
||||
.outputs QS2 QS1 Actuator
|
||||
.internal
|
||||
.dummy cell2__assign_0 cell2__assign_1 delay_4 assign_4 delay_5 assign_5 delay_6 assign_6 delay_7 assign_7 assign_0 delay_8 assign_1 delay_9 assign_2 assign_3 delay_0 assign_8 cell2__delay_1 delay_1 assign_9 cell2__delay_0 delay_2 delay_3 cell3__wait_0 cell1__delay_1 cell1__delay_0 cell3__wait_1 cell3__assign_0 cell3__assign_1 cell1__wait_1 cell1__wait_0 cell3__delay_0 cell3__delay_1 cell1__T0 T0 assign_10 cell1__assign_1 cell2__T0 wait_3 wait_2 wait_5 wait_4 cell2__wait_1 cell3__T0 delay_11 cell2__wait_0 cell1__assign_0 assign_11 wait_1 delay_10 wait_0
|
||||
#|.places P21 P20 P23 P22 P25 P24 P27 P26 P29 P28 P30 cell1__P2 cell1__P1 cell1__P4 cell1__P3 cell1__P6 cell1__P5 cell1__P0 P0 cell3__P4 P1 cell3__P3 P2 cell3__P6 P3 cell3__P5 P4 cell3__P0 P5 P6 cell3__P2 P7 cell3__P1 P8 P9 P10 P12 P11 cell2__P6 P14 cell2__P5 P13 cell2__P4 P16 cell2__P3 P15 cell2__P2 P18 cell2__P1 P17 cell2__P0 P19
|
||||
#@.init_state [00000]
|
||||
.graph
|
||||
cell2__P2 cell2__assign_0
|
||||
cell2__assign_0 cell2__P3
|
||||
cell2__P5 cell2__assign_1
|
||||
cell2__assign_1 cell2__P6
|
||||
P10 delay_4
|
||||
delay_4 P11
|
||||
P11 assign_4
|
||||
assign_4 P12
|
||||
P12 delay_5
|
||||
delay_5 P13
|
||||
P13 assign_5
|
||||
assign_5 P14
|
||||
P15 delay_6
|
||||
delay_6 P16
|
||||
P16 assign_6
|
||||
assign_6 P17
|
||||
P17 delay_7
|
||||
delay_7 P18
|
||||
P18 assign_7
|
||||
assign_7 P19
|
||||
P1 assign_0
|
||||
assign_0 P2
|
||||
P20 delay_8
|
||||
delay_8 P21
|
||||
P3 assign_1
|
||||
assign_1 P4
|
||||
P22 delay_9
|
||||
delay_9 P23
|
||||
P6 assign_2
|
||||
assign_2 P7
|
||||
P8 assign_3
|
||||
assign_3 P9
|
||||
P0 delay_0
|
||||
delay_0 P1
|
||||
P21 assign_8
|
||||
assign_8 P22
|
||||
cell2__P4 cell2__delay_1
|
||||
cell2__delay_1 cell2__P5
|
||||
P2 delay_1
|
||||
delay_1 P3
|
||||
P23 assign_9
|
||||
assign_9 P24
|
||||
cell2__P1 cell2__delay_0
|
||||
cell2__delay_0 cell2__P2
|
||||
P5 delay_2
|
||||
delay_2 P6
|
||||
P7 delay_3
|
||||
delay_3 P8
|
||||
cell3__P0 cell3__wait_0
|
||||
cell3__wait_0 cell3__P1
|
||||
cell1__P4 cell1__delay_1
|
||||
cell1__delay_1 cell1__P5
|
||||
cell1__P1 cell1__delay_0
|
||||
cell1__delay_0 cell1__P2
|
||||
cell3__P3 cell3__wait_1
|
||||
cell3__wait_1 cell3__P4
|
||||
cell3__P2 cell3__assign_0
|
||||
cell3__assign_0 cell3__P3
|
||||
cell3__P5 cell3__assign_1
|
||||
cell3__assign_1 cell3__P6
|
||||
cell1__P3 cell1__wait_1
|
||||
cell1__wait_1 cell1__P4
|
||||
cell1__P0 cell1__wait_0
|
||||
cell1__wait_0 cell1__P1
|
||||
cell3__P1 cell3__delay_0
|
||||
cell3__delay_0 cell3__P2
|
||||
cell3__P4 cell3__delay_1
|
||||
cell3__delay_1 cell3__P5
|
||||
cell1__P6 cell1__T0
|
||||
cell1__T0 cell1__P0
|
||||
P30 T0
|
||||
T0 P0
|
||||
P26 assign_10
|
||||
assign_10 P27
|
||||
cell1__P5 cell1__assign_1
|
||||
cell1__assign_1 cell1__P6
|
||||
cell2__P6 cell2__T0
|
||||
cell2__T0 cell2__P0
|
||||
P19 wait_3
|
||||
wait_3 P20
|
||||
P14 wait_2
|
||||
wait_2 P15
|
||||
P29 wait_5
|
||||
wait_5 P30
|
||||
P24 wait_4
|
||||
wait_4 P25
|
||||
cell2__P3 cell2__wait_1
|
||||
cell2__wait_1 cell2__P4
|
||||
cell3__P6 cell3__T0
|
||||
cell3__T0 cell3__P0
|
||||
P27 delay_11
|
||||
delay_11 P28
|
||||
cell2__P0 cell2__wait_0
|
||||
cell2__wait_0 cell2__P1
|
||||
cell1__P2 cell1__assign_0
|
||||
cell1__assign_0 cell1__P3
|
||||
P28 assign_11
|
||||
assign_11 P29
|
||||
P9 wait_1
|
||||
wait_1 P10
|
||||
P25 delay_10
|
||||
delay_10 P26
|
||||
P4 wait_0
|
||||
wait_0 P5
|
||||
.marking {cell1__P0 P0 cell3__P0 cell2__P0 }
|
||||
#@.enablings {<cell2__assign_0=[true]><cell2__assign_1=[true]><delay_4=[true]><assign_4=[true]><delay_5=[true]><assign_5=[true]><delay_6=[true]><assign_6=[true]><delay_7=[true]><assign_7=[true]><assign_0=[true]><delay_8=[true]><assign_1=[true]><delay_9=[true]><assign_2=[true]><assign_3=[true]><delay_0=[true]><assign_8=[true]><cell2__delay_1=[true]><delay_1=[true]><assign_9=[true]><cell2__delay_0=[true]><delay_2=[true]><delay_3=[true]><cell3__wait_0=[(QS2&Sensor)]><cell1__delay_1=[true]><cell1__delay_0=[true]><cell3__wait_1=[(Sensor=0)]><cell3__assign_0=[true]><cell3__assign_1=[true]><cell1__wait_1=[(Sensor=0)]><cell1__wait_0=[(Start&Sensor)]><cell3__delay_0=[true]><cell3__delay_1=[true]><cell1__T0=[true]><T0=[true]><assign_10=[true]><cell1__assign_1=[true]><cell2__T0=[true]><wait_3=[(QS2=0)]><wait_2=[QS2]><wait_5=[(Actuator=0)]><wait_4=[Actuator]><cell2__wait_1=[(Sensor=0)]><cell3__T0=[true]><delay_11=[true]><cell2__wait_0=[(QS1&Sensor)]><cell1__assign_0=[true]><assign_11=[true]><wait_1=[(QS1=0)]><delay_10=[true]><wait_0=[QS1]>}
|
||||
#@.delay_assignments {<delay_4=[5]><delay_5=[5]><delay_6=[5]><delay_7=[5]><delay_8=[5]><delay_9=[5]><delay_0=[5]><cell2__delay_1=[5]><delay_1=[5]><cell2__delay_0=[5]><delay_2=[5]><delay_3=[5]><cell1__delay_1=[5]><cell1__delay_0=[5]><cell3__delay_0=[5]><cell3__delay_1=[5]><delay_11=[5]><delay_10=[5]>}
|
||||
#@.boolean_assignments {<cell2__assign_0=[QS2:=1]><cell2__assign_1=[QS2:=0]><assign_4=[Sensor:=1]><assign_5=[QS1:=1]><assign_6=[QS1:=0]><assign_7=[Sensor:=0]><assign_0=[Sensor:=1]><assign_1=[Start:=1]><assign_2=[Start:=0]><assign_3=[Sensor:=0]><assign_8=[Sensor:=1]><assign_9=[QS2:=1]><cell3__assign_0=[Actuator:=1]><cell3__assign_1=[Actuator:=0]><assign_10=[QS2:=0]><cell1__assign_1=[QS1:=0]><cell1__assign_0=[QS1:=1]><assign_11=[Sensor:=0]>}
|
||||
#@.continuous
|
||||
.end
|
||||
File diff suppressed because it is too large
Load diff
File diff suppressed because one or more lines are too long
|
|
@ -31,13 +31,27 @@
|
|||
</functionDefinition>
|
||||
</listOfFunctionDefinitions>
|
||||
<listOfParameters>
|
||||
<parameter constant="false" id="ack" sboTerm="SBO:0000602" value="0"/>
|
||||
<parameter constant="false" id="a0" sboTerm="SBO:0000602" value="0"/>
|
||||
<parameter constant="false" id="a1" sboTerm="SBO:0000602" value="0"/>
|
||||
<parameter constant="false" id="b0" sboTerm="SBO:0000602" value="0"/>
|
||||
<parameter constant="false" id="b1" sboTerm="SBO:0000602" value="0"/>
|
||||
<parameter constant="false" id="c0" sboTerm="SBO:0000602" value="0"/>
|
||||
<parameter constant="false" id="c1" sboTerm="SBO:0000602" value="0"/>
|
||||
<parameter constant="false" id="ack" sboTerm="SBO:0000602" value="0">
|
||||
<comp:replacedBy xmlns:comp="http://www.sbml.org/sbml/level3/version1/comp/version1" comp:portRef="lfsr_imp__ack" comp:submodelRef="lfsr_instance"/>
|
||||
</parameter>
|
||||
<parameter constant="false" id="a0" sboTerm="SBO:0000602" value="0">
|
||||
<comp:replacedBy xmlns:comp="http://www.sbml.org/sbml/level3/version1/comp/version1" comp:portRef="lfsr_imp__a0" comp:submodelRef="lfsr_instance"/>
|
||||
</parameter>
|
||||
<parameter constant="false" id="a1" sboTerm="SBO:0000602" value="0">
|
||||
<comp:replacedBy xmlns:comp="http://www.sbml.org/sbml/level3/version1/comp/version1" comp:portRef="lfsr_imp__a1" comp:submodelRef="lfsr_instance"/>
|
||||
</parameter>
|
||||
<parameter constant="false" id="b0" sboTerm="SBO:0000602" value="0">
|
||||
<comp:replacedBy xmlns:comp="http://www.sbml.org/sbml/level3/version1/comp/version1" comp:portRef="lfsr_imp__b0" comp:submodelRef="lfsr_instance"/>
|
||||
</parameter>
|
||||
<parameter constant="false" id="b1" sboTerm="SBO:0000602" value="0">
|
||||
<comp:replacedBy xmlns:comp="http://www.sbml.org/sbml/level3/version1/comp/version1" comp:portRef="lfsr_imp__b1" comp:submodelRef="lfsr_instance"/>
|
||||
</parameter>
|
||||
<parameter constant="false" id="c0" sboTerm="SBO:0000602" value="0">
|
||||
<comp:replacedBy xmlns:comp="http://www.sbml.org/sbml/level3/version1/comp/version1" comp:portRef="lfsr_imp__c0" comp:submodelRef="lfsr_instance"/>
|
||||
</parameter>
|
||||
<parameter constant="false" id="c1" sboTerm="SBO:0000602" value="0">
|
||||
<comp:replacedBy xmlns:comp="http://www.sbml.org/sbml/level3/version1/comp/version1" comp:portRef="lfsr_imp__c1" comp:submodelRef="lfsr_instance"/>
|
||||
</parameter>
|
||||
<parameter constant="false" id="req" sboTerm="SBO:0000602" value="0">
|
||||
<comp:listOfReplacedElements xmlns:comp="http://www.sbml.org/sbml/level3/version1/comp/version1">
|
||||
<comp:replacedElement comp:portRef="lfsr_imp__req" comp:submodelRef="lfsr_instance"/>
|
||||
|
|
|
|||
|
|
@ -1,9 +1,9 @@
|
|||
.inputs bit1 bit0
|
||||
.outputs
|
||||
.internal parity1 parity0 mt_instance__state0 mt_instance__state1 mt_instance__parity1 mt_instance__temp mt_instance__parity0
|
||||
.outputs parity1 parity0
|
||||
.internal mt_instance__state0 mt_instance__state1 mt_instance__temp
|
||||
.dummy delay_4 assign_4 delay_5 delay_6 assign_0 assign_1 assign_2 assign_3 delay_0 delay_1 delay_2 delay_3 if_3 if_2 mt_instance__wait_2 mt_instance__wait_1 mt_instance__wait_0 mt_instance__if_10 if_1 if_0 mt_instance__if_5 mt_instance__if_6 mt_instance__if_7 mt_instance__if_8 T0 mt_instance__if_9 T1 T2 T3 T4 mt_instance__assign_6 mt_instance__delay_4 T5 mt_instance__assign_5 mt_instance__delay_3 mt_instance__delay_2 mt_instance__assign_4 mt_instance__T10 mt_instance__if_0 mt_instance__delay_1 mt_instance__assign_3 mt_instance__T11 mt_instance__if_1 mt_instance__if_2 mt_instance__T9 mt_instance__assign_9 mt_instance__if_3 mt_instance__T8 mt_instance__assign_8 mt_instance__delay_6 mt_instance__if_4 mt_instance__T7 mt_instance__assign_7 mt_instance__delay_5 mt_instance__delay_0 mt_instance__T12 mt_instance__T13 mt_instance__T6 mt_instance__T5 mt_instance__T4 mt_instance__T3 mt_instance__assign_2 mt_instance__T2 mt_instance__assign_1 mt_instance__T1 wait_1 mt_instance__assign_0 mt_instance__T0 wait_0
|
||||
#|.places P20 mt_instance__P34 mt_instance__P35 mt_instance__P36 mt_instance__P30 mt_instance__P31 mt_instance__P32 mt_instance__P33 mt_instance__P23 mt_instance__P24 mt_instance__P25 mt_instance__P26 mt_instance__P20 mt_instance__P21 mt_instance__P22 mt_instance__P27 mt_instance__P28 mt_instance__P29 P0 mt_instance__P12 P1 mt_instance__P9 mt_instance__P13 P2 mt_instance__P8 mt_instance__P14 P3 mt_instance__P7 mt_instance__P15 P4 mt_instance__P6 P5 mt_instance__P5 P6 mt_instance__P4 mt_instance__P10 P7 mt_instance__P3 mt_instance__P11 P8 P9 mt_instance__P16 mt_instance__P17 P10 mt_instance__P18 mt_instance__P19 P12 P11 P14 P13 P16 P15 P18 P17 mt_instance__P2 P19 mt_instance__P1 mt_instance__P0
|
||||
#@.init_state [000000000]
|
||||
#@.init_state [0000000]
|
||||
.graph
|
||||
P13 delay_4
|
||||
delay_4 P14
|
||||
|
|
@ -144,8 +144,8 @@ mt_instance__T0 mt_instance__P3
|
|||
P3 wait_0
|
||||
wait_0 P10
|
||||
.marking {P0 mt_instance__P0 }
|
||||
#@.enablings {<delay_4=[true]><assign_4=[true]><delay_5=[true]><delay_6=[true]><assign_0=[true]><assign_1=[true]><assign_2=[true]><assign_3=[true]><delay_0=[true]><delay_1=[true]><delay_2=[true]><delay_3=[true]><if_3=[(bit1&~(bit0))]><if_2=[bit0]><mt_instance__wait_2=[(~(bit0=1)&~(bit1=1))]><mt_instance__wait_1=[((mt_instance__parity1&(~(mt_instance__state0=1)&~(mt_instance__state1=1)))|((mt_instance__parity0&(~(mt_instance__state1=1)&mt_instance__state0))|(mt_instance__parity0&(mt_instance__state1&mt_instance__state0))))]><mt_instance__wait_0=[(bit0|bit1)]><mt_instance__if_10=[~(mt_instance__parity0)]><if_1=[true]><if_0=[true]><mt_instance__if_5=[(~(mt_instance__state1=1)&~(mt_instance__state0=1))]><mt_instance__if_6=[((~(mt_instance__state1=1)&mt_instance__state0)&~((~(mt_instance__state1=1)&~(mt_instance__state0=1))))]><mt_instance__if_7=[((mt_instance__state1&(mt_instance__state0&bit0))&(~((~(mt_instance__state1=1)&mt_instance__state0))&~((~(mt_instance__state1=1)&~(mt_instance__state0=1)))))]><mt_instance__if_8=[((mt_instance__parity1&(~(mt_instance__state1=1)&mt_instance__state0))&~(mt_instance__parity0))]><T0=[true]><mt_instance__if_9=[mt_instance__parity0]><T1=[true]><T2=[true]><T3=[true]><T4=[(~(bit1)&~(bit0))]><mt_instance__assign_6=[true]><mt_instance__delay_4=[true]><T5=[true]><mt_instance__assign_5=[true]><mt_instance__delay_3=[true]><mt_instance__delay_2=[true]><mt_instance__assign_4=[true]><mt_instance__T10=[(~((mt_instance__parity1&(~(mt_instance__state1=1)&mt_instance__state0)))&~(mt_instance__parity0))]><mt_instance__if_0=[((bit0&(~(mt_instance__state1=1)&~(mt_instance__state0=1)))|(bit1&(~(mt_instance__state1=1)&mt_instance__state0)))]><mt_instance__delay_1=[true]><mt_instance__assign_3=[true]><mt_instance__T11=[true]><mt_instance__if_1=[~(((bit0&(~(mt_instance__state1=1)&~(mt_instance__state0=1)))|(bit1&(~(mt_instance__state1=1)&mt_instance__state0))))]><mt_instance__if_2=[mt_instance__state1]><mt_instance__T9=[true]><mt_instance__assign_9=[true]><mt_instance__if_3=[~(mt_instance__state1)]><mt_instance__T8=[true]><mt_instance__assign_8=[true]><mt_instance__delay_6=[true]><mt_instance__if_4=[mt_instance__parity0]><mt_instance__T7=[(~((mt_instance__state1&(mt_instance__state0&bit0)))&(~((~(mt_instance__state1=1)&mt_instance__state0))&~((~(mt_instance__state1=1)&~(mt_instance__state0=1)))))]><mt_instance__assign_7=[true]><mt_instance__delay_5=[true]><mt_instance__delay_0=[true]><mt_instance__T12=[true]><mt_instance__T13=[true]><mt_instance__T6=[true]><mt_instance__T5=[true]><mt_instance__T4=[true]><mt_instance__T3=[true]><mt_instance__assign_2=[true]><mt_instance__T2=[true]><mt_instance__assign_1=[true]><mt_instance__T1=[true]><wait_1=[(~(parity0=1)&~(parity1=1))]><mt_instance__assign_0=[true]><mt_instance__T0=[true]><wait_0=[(parity0|parity1)]>}
|
||||
#@.enablings {<delay_4=[true]><assign_4=[true]><delay_5=[true]><delay_6=[true]><assign_0=[true]><assign_1=[true]><assign_2=[true]><assign_3=[true]><delay_0=[true]><delay_1=[true]><delay_2=[true]><delay_3=[true]><if_3=[(bit1&~(bit0))]><if_2=[bit0]><mt_instance__wait_2=[(~(bit0=1)&~(bit1=1))]><mt_instance__wait_1=[((parity1&(~(mt_instance__state0=1)&~(mt_instance__state1=1)))|((parity0&(~(mt_instance__state1=1)&mt_instance__state0))|(parity0&(mt_instance__state1&mt_instance__state0))))]><mt_instance__wait_0=[(bit0|bit1)]><mt_instance__if_10=[~(parity0)]><if_1=[true]><if_0=[true]><mt_instance__if_5=[(~(mt_instance__state1=1)&~(mt_instance__state0=1))]><mt_instance__if_6=[((~(mt_instance__state1=1)&mt_instance__state0)&~((~(mt_instance__state1=1)&~(mt_instance__state0=1))))]><mt_instance__if_7=[((mt_instance__state1&(mt_instance__state0&bit0))&(~((~(mt_instance__state1=1)&mt_instance__state0))&~((~(mt_instance__state1=1)&~(mt_instance__state0=1)))))]><mt_instance__if_8=[((parity1&(~(mt_instance__state1=1)&mt_instance__state0))&~(parity0))]><T0=[true]><mt_instance__if_9=[parity0]><T1=[true]><T2=[true]><T3=[true]><T4=[(~(bit1)&~(bit0))]><mt_instance__assign_6=[true]><mt_instance__delay_4=[true]><T5=[true]><mt_instance__assign_5=[true]><mt_instance__delay_3=[true]><mt_instance__delay_2=[true]><mt_instance__assign_4=[true]><mt_instance__T10=[(~((parity1&(~(mt_instance__state1=1)&mt_instance__state0)))&~(parity0))]><mt_instance__if_0=[((bit0&(~(mt_instance__state1=1)&~(mt_instance__state0=1)))|(bit1&(~(mt_instance__state1=1)&mt_instance__state0)))]><mt_instance__delay_1=[true]><mt_instance__assign_3=[true]><mt_instance__T11=[true]><mt_instance__if_1=[~(((bit0&(~(mt_instance__state1=1)&~(mt_instance__state0=1)))|(bit1&(~(mt_instance__state1=1)&mt_instance__state0))))]><mt_instance__if_2=[mt_instance__state1]><mt_instance__T9=[true]><mt_instance__assign_9=[true]><mt_instance__if_3=[~(mt_instance__state1)]><mt_instance__T8=[true]><mt_instance__assign_8=[true]><mt_instance__delay_6=[true]><mt_instance__if_4=[parity0]><mt_instance__T7=[(~((mt_instance__state1&(mt_instance__state0&bit0)))&(~((~(mt_instance__state1=1)&mt_instance__state0))&~((~(mt_instance__state1=1)&~(mt_instance__state0=1)))))]><mt_instance__assign_7=[true]><mt_instance__delay_5=[true]><mt_instance__delay_0=[true]><mt_instance__T12=[true]><mt_instance__T13=[true]><mt_instance__T6=[true]><mt_instance__T5=[true]><mt_instance__T4=[true]><mt_instance__T3=[true]><mt_instance__assign_2=[true]><mt_instance__T2=[true]><mt_instance__assign_1=[true]><mt_instance__T1=[true]><wait_1=[(~(parity0=1)&~(parity1=1))]><mt_instance__assign_0=[true]><mt_instance__T0=[true]><wait_0=[(parity0|parity1)]>}
|
||||
#@.delay_assignments {<delay_4=[5]><delay_5=[5]><delay_6=[5]><delay_0=[5]><delay_1=[5]><delay_2=[5]><delay_3=[5]><mt_instance__delay_4=[5]><mt_instance__delay_3=[5]><mt_instance__delay_2=[5]><mt_instance__delay_1=[5]><mt_instance__delay_6=[5]><mt_instance__delay_5=[5]><mt_instance__delay_0=[5]>}
|
||||
#@.boolean_assignments {<assign_4=[bit1:=0]><assign_1=[bit0:=1]><assign_2=[bit1:=1]><assign_3=[bit0:=0]><mt_instance__assign_6=[mt_instance__state1:=0]><mt_instance__assign_5=[mt_instance__state1:=1]><mt_instance__assign_4=[mt_instance__state0:=1]><mt_instance__assign_3=[mt_instance__parity0:=1]><mt_instance__assign_9=[mt_instance__parity1:=0]><mt_instance__assign_8=[mt_instance__parity0:=0]><mt_instance__assign_7=[mt_instance__state0:=0]><mt_instance__assign_2=[mt_instance__temp:=0]><mt_instance__assign_1=[mt_instance__temp:=1]><mt_instance__assign_0=[mt_instance__parity1:=1]>}
|
||||
#@.boolean_assignments {<assign_4=[bit1:=0]><assign_1=[bit0:=1]><assign_2=[bit1:=1]><assign_3=[bit0:=0]><mt_instance__assign_6=[mt_instance__state1:=0]><mt_instance__assign_5=[mt_instance__state1:=1]><mt_instance__assign_4=[mt_instance__state0:=1]><mt_instance__assign_3=[parity0:=1]><mt_instance__assign_9=[parity1:=0]><mt_instance__assign_8=[parity0:=0]><mt_instance__assign_7=[mt_instance__state0:=0]><mt_instance__assign_2=[mt_instance__temp:=0]><mt_instance__assign_1=[mt_instance__temp:=1]><mt_instance__assign_0=[parity1:=1]>}
|
||||
#@.continuous
|
||||
.end
|
||||
|
|
|
|||
|
|
@ -31,8 +31,12 @@
|
|||
</functionDefinition>
|
||||
</listOfFunctionDefinitions>
|
||||
<listOfParameters>
|
||||
<parameter constant="false" id="parity0" sboTerm="SBO:0000602" value="0"/>
|
||||
<parameter constant="false" id="parity1" sboTerm="SBO:0000602" value="0"/>
|
||||
<parameter constant="false" id="parity0" sboTerm="SBO:0000602" value="0">
|
||||
<comp:replacedBy xmlns:comp="http://www.sbml.org/sbml/level3/version1/comp/version1" comp:portRef="multthree_imp__parity0" comp:submodelRef="mt_instance"/>
|
||||
</parameter>
|
||||
<parameter constant="false" id="parity1" sboTerm="SBO:0000602" value="0">
|
||||
<comp:replacedBy xmlns:comp="http://www.sbml.org/sbml/level3/version1/comp/version1" comp:portRef="multthree_imp__parity1" comp:submodelRef="mt_instance"/>
|
||||
</parameter>
|
||||
<parameter constant="false" id="bit0" sboTerm="SBO:0000602" value="0">
|
||||
<comp:listOfReplacedElements xmlns:comp="http://www.sbml.org/sbml/level3/version1/comp/version1">
|
||||
<comp:replacedElement comp:portRef="multthree_imp__in0" comp:submodelRef="mt_instance"/>
|
||||
|
|
|
|||
|
|
@ -1,9 +1,9 @@
|
|||
.inputs sel1 sel0 in1_1 in2_0 in2_1 in1_0 req
|
||||
.outputs
|
||||
.internal q1 ack sf_instance__state sf_instance__ack sf_instance__q1 sf_instance__q0 q0
|
||||
.outputs q1 ack q0
|
||||
.internal sf_instance__state
|
||||
.dummy sf_instance__assign_10 sf_instance__assign_11 delay_4 assign_4 delay_5 assign_5 delay_6 assign_6 delay_7 assign_7 assign_0 delay_8 assign_1 delay_9 assign_2 assign_3 sf_instance__assign_14 sf_instance__assign_15 sf_instance__assign_12 sf_instance__assign_13 delay_0 assign_8 sf_instance__assign_18 delay_1 assign_9 sf_instance__assign_19 delay_2 sf_instance__assign_16 delay_3 sf_instance__assign_17 sf_instance__T2 sf_instance__T1 sf_instance__T0 sf_instance__delay_11 sf_instance__delay_10 sf_instance__delay_13 sf_instance__delay_12 sf_instance__delay_2 sf_instance__delay_1 sf_instance__delay_4 sf_instance__delay_3 sf_instance__delay_0 sf_instance__T6 sf_instance__delay_9 sf_instance__T5 sf_instance__T4 sf_instance__T3 T0 sf_instance__delay_6 T1 sf_instance__delay_5 sf_instance__T9 T2 sf_instance__delay_8 sf_instance__T8 T3 sf_instance__delay_7 sf_instance__T7 T4 T5 T6 T7 T8 T9 T10 T12 if_11 T11 if_10 wait_1 wait_0 sf_instance__if_9 sf_instance__assign_9 sf_instance__assign_8 sf_instance__if_10 sf_instance__assign_7 sf_instance__if_11 sf_instance__if_3 sf_instance__assign_6 sf_instance__assign_5 sf_instance__if_4 sf_instance__if_1 sf_instance__assign_4 sf_instance__assign_3 sf_instance__if_2 sf_instance__assign_2 sf_instance__if_7 sf_instance__assign_1 sf_instance__if_8 sf_instance__assign_0 sf_instance__if_5 sf_instance__if_6 sf_instance__if_0 if_3 if_2 if_5 if_4 if_7 sf_instance__wait_0 if_6 if_9 if_8 sf_instance__wait_2 sf_instance__wait_1 if_1 if_0 sf_instance__delay_15 sf_instance__delay_14 sf_instance__delay_17 sf_instance__delay_16 delay_16 sf_instance__delay_19 delay_15 sf_instance__delay_18 delay_18 delay_17 sf_instance__delay_20 sf_instance__delay_21 assign_10 sf_instance__assign_20 sf_instance__T16 delay_12 assign_16 sf_instance__T15 delay_11 assign_15 sf_instance__T14 delay_14 sf_instance__T13 delay_13 sf_instance__T12 assign_12 sf_instance__T11 assign_11 sf_instance__T10 delay_10 assign_14 assign_13
|
||||
#|.places sf_instance__P62 sf_instance__P61 sf_instance__P60 sf_instance__P44 sf_instance__P43 sf_instance__P42 sf_instance__P41 sf_instance__P40 sf_instance__P49 sf_instance__P48 sf_instance__P47 sf_instance__P46 sf_instance__P45 sf_instance__P55 sf_instance__P54 sf_instance__P53 sf_instance__P52 sf_instance__P51 sf_instance__P50 P10 P12 P11 P14 P13 P16 P15 P18 P17 P19 sf_instance__P59 sf_instance__P58 sf_instance__P57 sf_instance__P56 sf_instance__P22 sf_instance__P21 sf_instance__P20 P21 P20 P23 P22 P25 P24 P27 P26 P29 P28 sf_instance__P29 sf_instance__P28 sf_instance__P27 sf_instance__P26 sf_instance__P25 sf_instance__P24 sf_instance__P23 sf_instance__P33 sf_instance__P32 sf_instance__P31 sf_instance__P30 P30 P32 P31 P34 P33 P36 P35 P38 P37 P39 sf_instance__P39 sf_instance__P38 sf_instance__P37 sf_instance__P36 sf_instance__P35 sf_instance__P34 P41 P40 P43 P42 P45 P44 sf_instance__P9 P47 sf_instance__P8 P46 sf_instance__P7 P49 P48 sf_instance__P2 sf_instance__P1 sf_instance__P0 sf_instance__P6 sf_instance__P5 sf_instance__P4 sf_instance__P3 P0 sf_instance__P11 P1 sf_instance__P10 P2 P3 P4 P5 P6 P7 P8 P9 P50 P52 P51 P54 P53 P56 P55 sf_instance__P19 sf_instance__P18 sf_instance__P17 sf_instance__P16 sf_instance__P15 sf_instance__P14 sf_instance__P13 sf_instance__P12
|
||||
#@.init_state [00000000000000]
|
||||
#@.init_state [00000000000]
|
||||
.graph
|
||||
sf_instance__P30 sf_instance__assign_10
|
||||
sf_instance__assign_10 sf_instance__P31
|
||||
|
|
@ -282,8 +282,8 @@ assign_14 P47
|
|||
P43 assign_13
|
||||
assign_13 P44
|
||||
.marking {sf_instance__P0 P0 }
|
||||
#@.enablings {<sf_instance__assign_10=[true]><sf_instance__assign_11=[true]><delay_4=[true]><assign_4=[true]><delay_5=[true]><assign_5=[true]><delay_6=[true]><assign_6=[true]><delay_7=[true]><assign_7=[true]><assign_0=[true]><delay_8=[true]><assign_1=[true]><delay_9=[true]><assign_2=[true]><assign_3=[true]><sf_instance__assign_14=[true]><sf_instance__assign_15=[true]><sf_instance__assign_12=[true]><sf_instance__assign_13=[true]><delay_0=[true]><assign_8=[true]><sf_instance__assign_18=[true]><delay_1=[true]><assign_9=[true]><sf_instance__assign_19=[true]><delay_2=[true]><sf_instance__assign_16=[true]><delay_3=[true]><sf_instance__assign_17=[true]><sf_instance__T2=[true]><sf_instance__T1=[true]><sf_instance__T0=[true]><sf_instance__delay_11=[true]><sf_instance__delay_10=[true]><sf_instance__delay_13=[true]><sf_instance__delay_12=[true]><sf_instance__delay_2=[true]><sf_instance__delay_1=[true]><sf_instance__delay_4=[true]><sf_instance__delay_3=[true]><sf_instance__delay_0=[true]><sf_instance__T6=[true]><sf_instance__delay_9=[true]><sf_instance__T5=[true]><sf_instance__T4=[true]><sf_instance__T3=[true]><T0=[true]><sf_instance__delay_6=[true]><T1=[true]><sf_instance__delay_5=[true]><sf_instance__T9=[true]><T2=[true]><sf_instance__delay_8=[true]><sf_instance__T8=[(~((sel1&((in2_0=0)&((in2_1=0)&sf_instance__state))))&(~((sel1&((in2_0=0)&((in2_1=0)&(sf_instance__state=0)))))&(~((sel1&in2_1))&(~((sel1&in2_0))&(~((sel0&((in1_0=0)&((in1_1=0)&sf_instance__state))))&(~((sel0&((in1_0=0)&((in1_1=0)&(sf_instance__state=0)))))&(~((sel0&in1_1))&~((sel0&in1_0)))))))))]><T3=[true]><sf_instance__delay_7=[true]><sf_instance__T7=[true]><T4=[true]><T5=[true]><T6=[true]><T7=[true]><T8=[true]><T9=[true]><T10=[true]><T12=[true]><if_11=[~(sel0)]><T11=[true]><if_10=[sel0]><wait_1=[~(ack=1)]><wait_0=[ack]><sf_instance__if_9=[((sf_instance__q1&(sf_instance__state=0))&~((sf_instance__q0&sf_instance__state)))]><sf_instance__assign_9=[true]><sf_instance__assign_8=[true]><sf_instance__if_10=[sf_instance__q0]><sf_instance__assign_7=[true]><sf_instance__if_11=[sf_instance__q1]><sf_instance__if_3=[((sel0&((in1_0=0)&((in1_1=0)&sf_instance__state)))&(~((sel0&((in1_0=0)&((in1_1=0)&(sf_instance__state=0)))))&(~((sel0&in1_1))&~((sel0&in1_0)))))]><sf_instance__assign_6=[true]><sf_instance__assign_5=[true]><sf_instance__if_4=[((sel1&in2_0)&(~((sel0&((in1_0=0)&((in1_1=0)&sf_instance__state))))&(~((sel0&((in1_0=0)&((in1_1=0)&(sf_instance__state=0)))))&(~((sel0&in1_1))&~((sel0&in1_0))))))]><sf_instance__if_1=[((sel0&in1_1)&~((sel0&in1_0)))]><sf_instance__assign_4=[true]><sf_instance__assign_3=[true]><sf_instance__if_2=[((sel0&((in1_0=0)&((in1_1=0)&(sf_instance__state=0))))&(~((sel0&in1_1))&~((sel0&in1_0))))]><sf_instance__assign_2=[true]><sf_instance__if_7=[((sel1&((in2_0=0)&((in2_1=0)&sf_instance__state)))&(~((sel1&((in2_0=0)&((in2_1=0)&(sf_instance__state=0)))))&(~((sel1&in2_1))&(~((sel1&in2_0))&(~((sel0&((in1_0=0)&((in1_1=0)&sf_instance__state))))&(~((sel0&((in1_0=0)&((in1_1=0)&(sf_instance__state=0)))))&(~((sel0&in1_1))&~((sel0&in1_0)))))))))]><sf_instance__assign_1=[true]><sf_instance__if_8=[(sf_instance__q0&sf_instance__state)]><sf_instance__assign_0=[true]><sf_instance__if_5=[((sel1&in2_1)&(~((sel1&in2_0))&(~((sel0&((in1_0=0)&((in1_1=0)&sf_instance__state))))&(~((sel0&((in1_0=0)&((in1_1=0)&(sf_instance__state=0)))))&(~((sel0&in1_1))&~((sel0&in1_0)))))))]><sf_instance__if_6=[((sel1&((in2_0=0)&((in2_1=0)&(sf_instance__state=0))))&(~((sel1&in2_1))&(~((sel1&in2_0))&(~((sel0&((in1_0=0)&((in1_1=0)&sf_instance__state))))&(~((sel0&((in1_0=0)&((in1_1=0)&(sf_instance__state=0)))))&(~((sel0&in1_1))&~((sel0&in1_0))))))))]><sf_instance__if_0=[(sel0&in1_0)]><if_3=[true]><if_2=[true]><if_5=[true]><if_4=[true]><if_7=[~(in1_0)]><sf_instance__wait_0=[req]><if_6=[in1_0]><if_9=[~(in2_0)]><if_8=[in2_0]><sf_instance__wait_2=[~(req=1)]><sf_instance__wait_1=[((sf_instance__q0&~(sf_instance__state=1))|(sf_instance__q1&sf_instance__state))]><if_1=[true]><if_0=[true]><sf_instance__delay_15=[true]><sf_instance__delay_14=[true]><sf_instance__delay_17=[true]><sf_instance__delay_16=[true]><delay_16=[true]><sf_instance__delay_19=[true]><delay_15=[true]><sf_instance__delay_18=[true]><delay_18=[true]><delay_17=[true]><sf_instance__delay_20=[true]><sf_instance__delay_21=[true]><assign_10=[true]><sf_instance__assign_20=[true]><sf_instance__T16=[true]><delay_12=[true]><assign_16=[true]><sf_instance__T15=[~(sf_instance__q1)]><delay_11=[true]><assign_15=[true]><sf_instance__T14=[true]><delay_14=[true]><sf_instance__T13=[~(sf_instance__q0)]><delay_13=[true]><sf_instance__T12=[true]><assign_12=[true]><sf_instance__T11=[(~((sf_instance__q1&(sf_instance__state=0)))&~((sf_instance__q0&sf_instance__state)))]><assign_11=[true]><sf_instance__T10=[true]><delay_10=[true]><assign_14=[true]><assign_13=[true]>}
|
||||
#@.enablings {<sf_instance__assign_10=[true]><sf_instance__assign_11=[true]><delay_4=[true]><assign_4=[true]><delay_5=[true]><assign_5=[true]><delay_6=[true]><assign_6=[true]><delay_7=[true]><assign_7=[true]><assign_0=[true]><delay_8=[true]><assign_1=[true]><delay_9=[true]><assign_2=[true]><assign_3=[true]><sf_instance__assign_14=[true]><sf_instance__assign_15=[true]><sf_instance__assign_12=[true]><sf_instance__assign_13=[true]><delay_0=[true]><assign_8=[true]><sf_instance__assign_18=[true]><delay_1=[true]><assign_9=[true]><sf_instance__assign_19=[true]><delay_2=[true]><sf_instance__assign_16=[true]><delay_3=[true]><sf_instance__assign_17=[true]><sf_instance__T2=[true]><sf_instance__T1=[true]><sf_instance__T0=[true]><sf_instance__delay_11=[true]><sf_instance__delay_10=[true]><sf_instance__delay_13=[true]><sf_instance__delay_12=[true]><sf_instance__delay_2=[true]><sf_instance__delay_1=[true]><sf_instance__delay_4=[true]><sf_instance__delay_3=[true]><sf_instance__delay_0=[true]><sf_instance__T6=[true]><sf_instance__delay_9=[true]><sf_instance__T5=[true]><sf_instance__T4=[true]><sf_instance__T3=[true]><T0=[true]><sf_instance__delay_6=[true]><T1=[true]><sf_instance__delay_5=[true]><sf_instance__T9=[true]><T2=[true]><sf_instance__delay_8=[true]><sf_instance__T8=[(~((sel1&((in2_0=0)&((in2_1=0)&sf_instance__state))))&(~((sel1&((in2_0=0)&((in2_1=0)&(sf_instance__state=0)))))&(~((sel1&in2_1))&(~((sel1&in2_0))&(~((sel0&((in1_0=0)&((in1_1=0)&sf_instance__state))))&(~((sel0&((in1_0=0)&((in1_1=0)&(sf_instance__state=0)))))&(~((sel0&in1_1))&~((sel0&in1_0)))))))))]><T3=[true]><sf_instance__delay_7=[true]><sf_instance__T7=[true]><T4=[true]><T5=[true]><T6=[true]><T7=[true]><T8=[true]><T9=[true]><T10=[true]><T12=[true]><if_11=[~(sel0)]><T11=[true]><if_10=[sel0]><wait_1=[~(ack=1)]><wait_0=[ack]><sf_instance__if_9=[((q1&(sf_instance__state=0))&~((q0&sf_instance__state)))]><sf_instance__assign_9=[true]><sf_instance__assign_8=[true]><sf_instance__if_10=[q0]><sf_instance__assign_7=[true]><sf_instance__if_11=[q1]><sf_instance__if_3=[((sel0&((in1_0=0)&((in1_1=0)&sf_instance__state)))&(~((sel0&((in1_0=0)&((in1_1=0)&(sf_instance__state=0)))))&(~((sel0&in1_1))&~((sel0&in1_0)))))]><sf_instance__assign_6=[true]><sf_instance__assign_5=[true]><sf_instance__if_4=[((sel1&in2_0)&(~((sel0&((in1_0=0)&((in1_1=0)&sf_instance__state))))&(~((sel0&((in1_0=0)&((in1_1=0)&(sf_instance__state=0)))))&(~((sel0&in1_1))&~((sel0&in1_0))))))]><sf_instance__if_1=[((sel0&in1_1)&~((sel0&in1_0)))]><sf_instance__assign_4=[true]><sf_instance__assign_3=[true]><sf_instance__if_2=[((sel0&((in1_0=0)&((in1_1=0)&(sf_instance__state=0))))&(~((sel0&in1_1))&~((sel0&in1_0))))]><sf_instance__assign_2=[true]><sf_instance__if_7=[((sel1&((in2_0=0)&((in2_1=0)&sf_instance__state)))&(~((sel1&((in2_0=0)&((in2_1=0)&(sf_instance__state=0)))))&(~((sel1&in2_1))&(~((sel1&in2_0))&(~((sel0&((in1_0=0)&((in1_1=0)&sf_instance__state))))&(~((sel0&((in1_0=0)&((in1_1=0)&(sf_instance__state=0)))))&(~((sel0&in1_1))&~((sel0&in1_0)))))))))]><sf_instance__assign_1=[true]><sf_instance__if_8=[(q0&sf_instance__state)]><sf_instance__assign_0=[true]><sf_instance__if_5=[((sel1&in2_1)&(~((sel1&in2_0))&(~((sel0&((in1_0=0)&((in1_1=0)&sf_instance__state))))&(~((sel0&((in1_0=0)&((in1_1=0)&(sf_instance__state=0)))))&(~((sel0&in1_1))&~((sel0&in1_0)))))))]><sf_instance__if_6=[((sel1&((in2_0=0)&((in2_1=0)&(sf_instance__state=0))))&(~((sel1&in2_1))&(~((sel1&in2_0))&(~((sel0&((in1_0=0)&((in1_1=0)&sf_instance__state))))&(~((sel0&((in1_0=0)&((in1_1=0)&(sf_instance__state=0)))))&(~((sel0&in1_1))&~((sel0&in1_0))))))))]><sf_instance__if_0=[(sel0&in1_0)]><if_3=[true]><if_2=[true]><if_5=[true]><if_4=[true]><if_7=[~(in1_0)]><sf_instance__wait_0=[req]><if_6=[in1_0]><if_9=[~(in2_0)]><if_8=[in2_0]><sf_instance__wait_2=[~(req=1)]><sf_instance__wait_1=[((q0&~(sf_instance__state=1))|(q1&sf_instance__state))]><if_1=[true]><if_0=[true]><sf_instance__delay_15=[true]><sf_instance__delay_14=[true]><sf_instance__delay_17=[true]><sf_instance__delay_16=[true]><delay_16=[true]><sf_instance__delay_19=[true]><delay_15=[true]><sf_instance__delay_18=[true]><delay_18=[true]><delay_17=[true]><sf_instance__delay_20=[true]><sf_instance__delay_21=[true]><assign_10=[true]><sf_instance__assign_20=[true]><sf_instance__T16=[true]><delay_12=[true]><assign_16=[true]><sf_instance__T15=[~(q1)]><delay_11=[true]><assign_15=[true]><sf_instance__T14=[true]><delay_14=[true]><sf_instance__T13=[~(q0)]><delay_13=[true]><sf_instance__T12=[true]><assign_12=[true]><sf_instance__T11=[(~((q1&(sf_instance__state=0)))&~((q0&sf_instance__state)))]><assign_11=[true]><sf_instance__T10=[true]><delay_10=[true]><assign_14=[true]><assign_13=[true]>}
|
||||
#@.delay_assignments {<delay_4=[5]><delay_5=[5]><delay_6=[5]><delay_7=[5]><delay_8=[5]><delay_9=[5]><delay_0=[5]><delay_1=[5]><delay_2=[5]><delay_3=[5]><sf_instance__delay_11=[5]><sf_instance__delay_10=[5]><sf_instance__delay_13=[5]><sf_instance__delay_12=[5]><sf_instance__delay_2=[5]><sf_instance__delay_1=[5]><sf_instance__delay_4=[5]><sf_instance__delay_3=[5]><sf_instance__delay_0=[5]><sf_instance__delay_9=[5]><sf_instance__delay_6=[5]><sf_instance__delay_5=[5]><sf_instance__delay_8=[5]><sf_instance__delay_7=[5]><sf_instance__delay_15=[5]><sf_instance__delay_14=[5]><sf_instance__delay_17=[5]><sf_instance__delay_16=[5]><delay_16=[5]><sf_instance__delay_19=[5]><delay_15=[5]><sf_instance__delay_18=[5]><delay_18=[5]><delay_17=[5]><sf_instance__delay_20=[5]><sf_instance__delay_21=[5]><delay_12=[5]><delay_11=[5]><delay_14=[5]><delay_13=[5]><delay_10=[5]>}
|
||||
#@.boolean_assignments {<sf_instance__assign_10=[sf_instance__q1:=1]><sf_instance__assign_11=[sf_instance__ack:=1]><assign_4=[in1_1:=1]><assign_5=[in2_0:=1]><assign_6=[in2_1:=1]><assign_7=[sel0:=1]><assign_3=[in1_0:=1]><sf_instance__assign_14=[sf_instance__q1:=1]><sf_instance__assign_15=[sf_instance__ack:=1]><sf_instance__assign_12=[sf_instance__q0:=1]><sf_instance__assign_13=[sf_instance__ack:=1]><assign_8=[sel1:=1]><sf_instance__assign_18=[sf_instance__q0:=0]><assign_9=[req:=1]><sf_instance__assign_19=[sf_instance__q1:=0]><sf_instance__assign_16=[sf_instance__state:=0]><sf_instance__assign_17=[sf_instance__state:=1]><sf_instance__assign_9=[sf_instance__ack:=1]><sf_instance__assign_8=[sf_instance__q0:=1]><sf_instance__assign_7=[sf_instance__ack:=1]><sf_instance__assign_6=[sf_instance__q1:=1]><sf_instance__assign_5=[sf_instance__ack:=1]><sf_instance__assign_4=[sf_instance__q0:=1]><sf_instance__assign_3=[sf_instance__ack:=1]><sf_instance__assign_2=[sf_instance__q1:=1]><sf_instance__assign_1=[sf_instance__ack:=1]><sf_instance__assign_0=[sf_instance__q0:=1]><assign_10=[req:=0]><sf_instance__assign_20=[sf_instance__ack:=0]><assign_16=[sel1:=0]><assign_15=[sel0:=0]><assign_12=[in1_1:=0]><assign_11=[in1_0:=0]><assign_14=[in2_1:=0]><assign_13=[in2_0:=0]>}
|
||||
#@.boolean_assignments {<sf_instance__assign_10=[q1:=1]><sf_instance__assign_11=[ack:=1]><assign_4=[in1_1:=1]><assign_5=[in2_0:=1]><assign_6=[in2_1:=1]><assign_7=[sel0:=1]><assign_3=[in1_0:=1]><sf_instance__assign_14=[q1:=1]><sf_instance__assign_15=[ack:=1]><sf_instance__assign_12=[q0:=1]><sf_instance__assign_13=[ack:=1]><assign_8=[sel1:=1]><sf_instance__assign_18=[q0:=0]><assign_9=[req:=1]><sf_instance__assign_19=[q1:=0]><sf_instance__assign_16=[sf_instance__state:=0]><sf_instance__assign_17=[sf_instance__state:=1]><sf_instance__assign_9=[ack:=1]><sf_instance__assign_8=[q0:=1]><sf_instance__assign_7=[ack:=1]><sf_instance__assign_6=[q1:=1]><sf_instance__assign_5=[ack:=1]><sf_instance__assign_4=[q0:=1]><sf_instance__assign_3=[ack:=1]><sf_instance__assign_2=[q1:=1]><sf_instance__assign_1=[ack:=1]><sf_instance__assign_0=[q0:=1]><assign_10=[req:=0]><sf_instance__assign_20=[ack:=0]><assign_16=[sel1:=0]><assign_15=[sel0:=0]><assign_12=[in1_1:=0]><assign_11=[in1_0:=0]><assign_14=[in2_1:=0]><assign_13=[in2_0:=0]>}
|
||||
#@.continuous
|
||||
.end
|
||||
|
|
|
|||
|
|
@ -31,9 +31,15 @@
|
|||
</functionDefinition>
|
||||
</listOfFunctionDefinitions>
|
||||
<listOfParameters>
|
||||
<parameter constant="false" id="q0" sboTerm="SBO:0000602" value="0"/>
|
||||
<parameter constant="false" id="q1" sboTerm="SBO:0000602" value="0"/>
|
||||
<parameter constant="false" id="ack" sboTerm="SBO:0000602" value="0"/>
|
||||
<parameter constant="false" id="q0" sboTerm="SBO:0000602" value="0">
|
||||
<comp:replacedBy xmlns:comp="http://www.sbml.org/sbml/level3/version1/comp/version1" comp:portRef="scanflop_imp__q0" comp:submodelRef="sf_instance"/>
|
||||
</parameter>
|
||||
<parameter constant="false" id="q1" sboTerm="SBO:0000602" value="0">
|
||||
<comp:replacedBy xmlns:comp="http://www.sbml.org/sbml/level3/version1/comp/version1" comp:portRef="scanflop_imp__q1" comp:submodelRef="sf_instance"/>
|
||||
</parameter>
|
||||
<parameter constant="false" id="ack" sboTerm="SBO:0000602" value="0">
|
||||
<comp:replacedBy xmlns:comp="http://www.sbml.org/sbml/level3/version1/comp/version1" comp:portRef="scanflop_imp__ack" comp:submodelRef="sf_instance"/>
|
||||
</parameter>
|
||||
<parameter constant="false" id="in1_0" sboTerm="SBO:0000602" value="0">
|
||||
<comp:listOfReplacedElements xmlns:comp="http://www.sbml.org/sbml/level3/version1/comp/version1">
|
||||
<comp:replacedElement comp:portRef="scanflop_imp__in1_0" comp:submodelRef="sf_instance"/>
|
||||
|
|
|
|||
|
|
@ -1,9 +1,9 @@
|
|||
.inputs r s
|
||||
.outputs
|
||||
.internal q ack sl_instance__ack sl_instance__q
|
||||
.outputs q ack
|
||||
.internal
|
||||
.dummy sl_instance__if_0 sl_instance__wait_1 sl_instance__wait_0 sl_instance__if_1 delay_4 assign_4 delay_5 delay_6 assign_0 assign_1 assign_2 assign_3 sl_instance__delay_2 sl_instance__delay_1 sl_instance__delay_0 delay_0 T0 sl_instance__delay_6 delay_1 T1 sl_instance__delay_5 delay_2 T2 sl_instance__delay_4 delay_3 T3 sl_instance__delay_3 if_3 T4 if_2 sl_instance__assign_0 sl_instance__assign_3 sl_instance__assign_4 sl_instance__assign_1 sl_instance__assign_2 sl_instance__T1 sl_instance__T2 sl_instance__T0 if_1 wait_1 if_0 wait_0
|
||||
#|.places sl_instance__P10 sl_instance__P11 sl_instance__P12 sl_instance__P13 sl_instance__P9 sl_instance__P7 sl_instance__P14 sl_instance__P8 sl_instance__P15 sl_instance__P5 sl_instance__P16 P20 sl_instance__P6 sl_instance__P17 P0 P1 P2 P3 P4 P5 P6 P7 P8 P9 P10 P12 sl_instance__P3 P11 sl_instance__P4 P14 sl_instance__P1 P13 sl_instance__P2 P16 P15 sl_instance__P0 P18 P17 P19
|
||||
#@.init_state [000000]
|
||||
#@.init_state [0000]
|
||||
.graph
|
||||
sl_instance__P2 sl_instance__if_0
|
||||
sl_instance__if_0 sl_instance__P4
|
||||
|
|
@ -92,6 +92,6 @@ wait_0 P10
|
|||
.marking {P0 sl_instance__P0 }
|
||||
#@.enablings {<sl_instance__if_0=[s]><sl_instance__wait_1=[(~(s=1)&~(r=1))]><sl_instance__wait_0=[(s|r)]><sl_instance__if_1=[~(s)]><delay_4=[true]><assign_4=[true]><delay_5=[true]><delay_6=[true]><assign_0=[true]><assign_1=[true]><assign_2=[true]><assign_3=[true]><sl_instance__delay_2=[true]><sl_instance__delay_1=[true]><sl_instance__delay_0=[true]><delay_0=[true]><T0=[true]><sl_instance__delay_6=[true]><delay_1=[true]><T1=[true]><sl_instance__delay_5=[true]><delay_2=[true]><T2=[true]><sl_instance__delay_4=[true]><delay_3=[true]><T3=[true]><sl_instance__delay_3=[true]><if_3=[~(s)]><T4=[true]><if_2=[s]><sl_instance__assign_0=[true]><sl_instance__assign_3=[true]><sl_instance__assign_4=[true]><sl_instance__assign_1=[true]><sl_instance__assign_2=[true]><sl_instance__T1=[true]><sl_instance__T2=[true]><sl_instance__T0=[true]><if_1=[true]><wait_1=[~(ack=1)]><if_0=[true]><wait_0=[ack]>}
|
||||
#@.delay_assignments {<delay_4=[5]><delay_5=[5]><delay_6=[5]><sl_instance__delay_2=[5]><sl_instance__delay_1=[5]><sl_instance__delay_0=[5]><delay_0=[5]><sl_instance__delay_6=[5]><delay_1=[5]><sl_instance__delay_5=[5]><delay_2=[5]><sl_instance__delay_4=[5]><delay_3=[5]><sl_instance__delay_3=[5]>}
|
||||
#@.boolean_assignments {<assign_4=[r:=0]><assign_1=[r:=1]><assign_2=[s:=1]><assign_3=[s:=0]><sl_instance__assign_0=[sl_instance__q:=1]><sl_instance__assign_3=[sl_instance__ack:=1]><sl_instance__assign_4=[sl_instance__ack:=0]><sl_instance__assign_1=[sl_instance__ack:=1]><sl_instance__assign_2=[sl_instance__q:=0]>}
|
||||
#@.boolean_assignments {<assign_4=[r:=0]><assign_1=[r:=1]><assign_2=[s:=1]><assign_3=[s:=0]><sl_instance__assign_0=[q:=1]><sl_instance__assign_3=[ack:=1]><sl_instance__assign_4=[ack:=0]><sl_instance__assign_1=[ack:=1]><sl_instance__assign_2=[q:=0]>}
|
||||
#@.continuous
|
||||
.end
|
||||
|
|
|
|||
|
|
@ -5,43 +5,13 @@
|
|||
<sbol:displayId>circuit_qnot</sbol:displayId>
|
||||
<sbol:version>1.0</sbol:version>
|
||||
<sbol:functionalComponent>
|
||||
<sbol:FunctionalComponent rdf:about="http://dummy.org/circuit_qnot/FC15_notTU/1.0">
|
||||
<sbol:persistentIdentity rdf:resource="http://dummy.org/circuit_qnot/FC15_notTU"/>
|
||||
<sbol:displayId>FC15_notTU</sbol:displayId>
|
||||
<sbol:FunctionalComponent rdf:about="http://dummy.org/circuit_qnot/FC19_q/1.0">
|
||||
<sbol:persistentIdentity rdf:resource="http://dummy.org/circuit_qnot/FC19_q"/>
|
||||
<sbol:displayId>FC19_q</sbol:displayId>
|
||||
<sbol:version>1.0</sbol:version>
|
||||
<sbol:definition rdf:resource="http://dummy.org/CD29_notTU/1.0"/>
|
||||
<sbol:definition rdf:resource="http://dummy.org/CD2_q/1.0"/>
|
||||
<sbol:access rdf:resource="http://sbols.org/v2#public"/>
|
||||
<sbol:direction rdf:resource="http://sbols.org/v2#none"/>
|
||||
</sbol:FunctionalComponent>
|
||||
</sbol:functionalComponent>
|
||||
<sbol:functionalComponent>
|
||||
<sbol:FunctionalComponent rdf:about="http://dummy.org/circuit_qnot/FC14_wiredProtein/1.0">
|
||||
<sbol:persistentIdentity rdf:resource="http://dummy.org/circuit_qnot/FC14_wiredProtein"/>
|
||||
<sbol:displayId>FC14_wiredProtein</sbol:displayId>
|
||||
<sbol:version>1.0</sbol:version>
|
||||
<sbol:definition rdf:resource="http://dummy.org/CD27_wiredProtein/1.0"/>
|
||||
<sbol:access rdf:resource="http://sbols.org/v2#public"/>
|
||||
<sbol:direction rdf:resource="http://sbols.org/v2#inout"/>
|
||||
</sbol:FunctionalComponent>
|
||||
</sbol:functionalComponent>
|
||||
<sbol:functionalComponent>
|
||||
<sbol:FunctionalComponent rdf:about="http://dummy.org/circuit_qnot/FC17_norTU/1.0">
|
||||
<sbol:persistentIdentity rdf:resource="http://dummy.org/circuit_qnot/FC17_norTU"/>
|
||||
<sbol:displayId>FC17_norTU</sbol:displayId>
|
||||
<sbol:version>1.0</sbol:version>
|
||||
<sbol:definition rdf:resource="http://dummy.org/CD36_norTU/1.0"/>
|
||||
<sbol:access rdf:resource="http://sbols.org/v2#public"/>
|
||||
<sbol:direction rdf:resource="http://sbols.org/v2#none"/>
|
||||
</sbol:FunctionalComponent>
|
||||
</sbol:functionalComponent>
|
||||
<sbol:functionalComponent>
|
||||
<sbol:FunctionalComponent rdf:about="http://dummy.org/circuit_qnot/FC13_notTU/1.0">
|
||||
<sbol:persistentIdentity rdf:resource="http://dummy.org/circuit_qnot/FC13_notTU"/>
|
||||
<sbol:displayId>FC13_notTU</sbol:displayId>
|
||||
<sbol:version>1.0</sbol:version>
|
||||
<sbol:definition rdf:resource="http://dummy.org/CD23_notTU/1.0"/>
|
||||
<sbol:access rdf:resource="http://sbols.org/v2#public"/>
|
||||
<sbol:direction rdf:resource="http://sbols.org/v2#none"/>
|
||||
<sbol:direction rdf:resource="http://sbols.org/v2#in"/>
|
||||
</sbol:FunctionalComponent>
|
||||
</sbol:functionalComponent>
|
||||
<sbol:functionalComponent>
|
||||
|
|
@ -55,13 +25,13 @@
|
|||
</sbol:FunctionalComponent>
|
||||
</sbol:functionalComponent>
|
||||
<sbol:functionalComponent>
|
||||
<sbol:FunctionalComponent rdf:about="http://dummy.org/circuit_qnot/FC19_q/1.0">
|
||||
<sbol:persistentIdentity rdf:resource="http://dummy.org/circuit_qnot/FC19_q"/>
|
||||
<sbol:displayId>FC19_q</sbol:displayId>
|
||||
<sbol:FunctionalComponent rdf:about="http://dummy.org/circuit_qnot/FC14_wiredProtein/1.0">
|
||||
<sbol:persistentIdentity rdf:resource="http://dummy.org/circuit_qnot/FC14_wiredProtein"/>
|
||||
<sbol:displayId>FC14_wiredProtein</sbol:displayId>
|
||||
<sbol:version>1.0</sbol:version>
|
||||
<sbol:definition rdf:resource="http://dummy.org/CD2_q/1.0"/>
|
||||
<sbol:definition rdf:resource="http://dummy.org/CD27_wiredProtein/1.0"/>
|
||||
<sbol:access rdf:resource="http://sbols.org/v2#public"/>
|
||||
<sbol:direction rdf:resource="http://sbols.org/v2#in"/>
|
||||
<sbol:direction rdf:resource="http://sbols.org/v2#inout"/>
|
||||
</sbol:FunctionalComponent>
|
||||
</sbol:functionalComponent>
|
||||
<sbol:functionalComponent>
|
||||
|
|
@ -74,6 +44,36 @@
|
|||
<sbol:direction rdf:resource="http://sbols.org/v2#out"/>
|
||||
</sbol:FunctionalComponent>
|
||||
</sbol:functionalComponent>
|
||||
<sbol:functionalComponent>
|
||||
<sbol:FunctionalComponent rdf:about="http://dummy.org/circuit_qnot/FC13_notTU/1.0">
|
||||
<sbol:persistentIdentity rdf:resource="http://dummy.org/circuit_qnot/FC13_notTU"/>
|
||||
<sbol:displayId>FC13_notTU</sbol:displayId>
|
||||
<sbol:version>1.0</sbol:version>
|
||||
<sbol:definition rdf:resource="http://dummy.org/CD23_notTU/1.0"/>
|
||||
<sbol:access rdf:resource="http://sbols.org/v2#public"/>
|
||||
<sbol:direction rdf:resource="http://sbols.org/v2#none"/>
|
||||
</sbol:FunctionalComponent>
|
||||
</sbol:functionalComponent>
|
||||
<sbol:functionalComponent>
|
||||
<sbol:FunctionalComponent rdf:about="http://dummy.org/circuit_qnot/FC15_notTU/1.0">
|
||||
<sbol:persistentIdentity rdf:resource="http://dummy.org/circuit_qnot/FC15_notTU"/>
|
||||
<sbol:displayId>FC15_notTU</sbol:displayId>
|
||||
<sbol:version>1.0</sbol:version>
|
||||
<sbol:definition rdf:resource="http://dummy.org/CD29_notTU/1.0"/>
|
||||
<sbol:access rdf:resource="http://sbols.org/v2#public"/>
|
||||
<sbol:direction rdf:resource="http://sbols.org/v2#none"/>
|
||||
</sbol:FunctionalComponent>
|
||||
</sbol:functionalComponent>
|
||||
<sbol:functionalComponent>
|
||||
<sbol:FunctionalComponent rdf:about="http://dummy.org/circuit_qnot/FC17_norTU/1.0">
|
||||
<sbol:persistentIdentity rdf:resource="http://dummy.org/circuit_qnot/FC17_norTU"/>
|
||||
<sbol:displayId>FC17_norTU</sbol:displayId>
|
||||
<sbol:version>1.0</sbol:version>
|
||||
<sbol:definition rdf:resource="http://dummy.org/CD36_norTU/1.0"/>
|
||||
<sbol:access rdf:resource="http://sbols.org/v2#public"/>
|
||||
<sbol:direction rdf:resource="http://sbols.org/v2#none"/>
|
||||
</sbol:FunctionalComponent>
|
||||
</sbol:functionalComponent>
|
||||
<sbol:functionalComponent>
|
||||
<sbol:FunctionalComponent rdf:about="http://dummy.org/circuit_qnot/FC16_wiredProtein/1.0">
|
||||
<sbol:persistentIdentity rdf:resource="http://dummy.org/circuit_qnot/FC16_wiredProtein"/>
|
||||
|
|
@ -271,16 +271,6 @@
|
|||
<sbol:persistentIdentity rdf:resource="http://dummy.org/circuit_srlatchDesign"/>
|
||||
<sbol:displayId>circuit_srlatchDesign</sbol:displayId>
|
||||
<sbol:version>1.0</sbol:version>
|
||||
<sbol:functionalComponent>
|
||||
<sbol:FunctionalComponent rdf:about="http://dummy.org/circuit_srlatchDesign/FC1_r/1.0">
|
||||
<sbol:persistentIdentity rdf:resource="http://dummy.org/circuit_srlatchDesign/FC1_r"/>
|
||||
<sbol:displayId>FC1_r</sbol:displayId>
|
||||
<sbol:version>1.0</sbol:version>
|
||||
<sbol:definition rdf:resource="http://dummy.org/CD1_r/1.0"/>
|
||||
<sbol:access rdf:resource="http://sbols.org/v2#public"/>
|
||||
<sbol:direction rdf:resource="http://sbols.org/v2#in"/>
|
||||
</sbol:FunctionalComponent>
|
||||
</sbol:functionalComponent>
|
||||
<sbol:functionalComponent>
|
||||
<sbol:FunctionalComponent rdf:about="http://dummy.org/circuit_srlatchDesign/FC2_q/1.0">
|
||||
<sbol:persistentIdentity rdf:resource="http://dummy.org/circuit_srlatchDesign/FC2_q"/>
|
||||
|
|
@ -301,6 +291,16 @@
|
|||
<sbol:direction rdf:resource="http://sbols.org/v2#in"/>
|
||||
</sbol:FunctionalComponent>
|
||||
</sbol:functionalComponent>
|
||||
<sbol:functionalComponent>
|
||||
<sbol:FunctionalComponent rdf:about="http://dummy.org/circuit_srlatchDesign/FC1_r/1.0">
|
||||
<sbol:persistentIdentity rdf:resource="http://dummy.org/circuit_srlatchDesign/FC1_r"/>
|
||||
<sbol:displayId>FC1_r</sbol:displayId>
|
||||
<sbol:version>1.0</sbol:version>
|
||||
<sbol:definition rdf:resource="http://dummy.org/CD1_r/1.0"/>
|
||||
<sbol:access rdf:resource="http://sbols.org/v2#public"/>
|
||||
<sbol:direction rdf:resource="http://sbols.org/v2#in"/>
|
||||
</sbol:FunctionalComponent>
|
||||
</sbol:functionalComponent>
|
||||
<sbol:functionalComponent>
|
||||
<sbol:FunctionalComponent rdf:about="http://dummy.org/circuit_srlatchDesign/FC3_qnot/1.0">
|
||||
<sbol:persistentIdentity rdf:resource="http://dummy.org/circuit_srlatchDesign/FC3_qnot"/>
|
||||
|
|
@ -318,9 +318,9 @@
|
|||
<sbol:version>1.0</sbol:version>
|
||||
<sbol:definition rdf:resource="http://dummy.org/circuit_q"/>
|
||||
<sbol:mapsTo>
|
||||
<sbol:MapsTo rdf:about="http://dummy.org/circuit_srlatchDesign/M0/MT2/1.0">
|
||||
<sbol:persistentIdentity rdf:resource="http://dummy.org/circuit_srlatchDesign/M0/MT2"/>
|
||||
<sbol:displayId>MT2</sbol:displayId>
|
||||
<sbol:MapsTo rdf:about="http://dummy.org/circuit_srlatchDesign/M0/MT0/1.0">
|
||||
<sbol:persistentIdentity rdf:resource="http://dummy.org/circuit_srlatchDesign/M0/MT0"/>
|
||||
<sbol:displayId>MT0</sbol:displayId>
|
||||
<sbol:version>1.0</sbol:version>
|
||||
<sbol:refinement rdf:resource="http://sbols.org/v2#useLocal"/>
|
||||
<sbol:remote rdf:resource="http://dummy.org/circuit_q/FC10_r/1.0"/>
|
||||
|
|
@ -328,9 +328,9 @@
|
|||
</sbol:MapsTo>
|
||||
</sbol:mapsTo>
|
||||
<sbol:mapsTo>
|
||||
<sbol:MapsTo rdf:about="http://dummy.org/circuit_srlatchDesign/M0/MT0/1.0">
|
||||
<sbol:persistentIdentity rdf:resource="http://dummy.org/circuit_srlatchDesign/M0/MT0"/>
|
||||
<sbol:displayId>MT0</sbol:displayId>
|
||||
<sbol:MapsTo rdf:about="http://dummy.org/circuit_srlatchDesign/M0/MT2/1.0">
|
||||
<sbol:persistentIdentity rdf:resource="http://dummy.org/circuit_srlatchDesign/M0/MT2"/>
|
||||
<sbol:displayId>MT2</sbol:displayId>
|
||||
<sbol:version>1.0</sbol:version>
|
||||
<sbol:refinement rdf:resource="http://sbols.org/v2#useLocal"/>
|
||||
<sbol:remote rdf:resource="http://dummy.org/circuit_q/FC11_qnot/1.0"/>
|
||||
|
|
@ -355,6 +355,16 @@
|
|||
<sbol:displayId>M1</sbol:displayId>
|
||||
<sbol:version>1.0</sbol:version>
|
||||
<sbol:definition rdf:resource="http://dummy.org/circuit_qnot"/>
|
||||
<sbol:mapsTo>
|
||||
<sbol:MapsTo rdf:about="http://dummy.org/circuit_srlatchDesign/M1/MT4/1.0">
|
||||
<sbol:persistentIdentity rdf:resource="http://dummy.org/circuit_srlatchDesign/M1/MT4"/>
|
||||
<sbol:displayId>MT4</sbol:displayId>
|
||||
<sbol:version>1.0</sbol:version>
|
||||
<sbol:refinement rdf:resource="http://sbols.org/v2#useLocal"/>
|
||||
<sbol:remote rdf:resource="http://dummy.org/circuit_qnot/FC19_q/1.0"/>
|
||||
<sbol:local rdf:resource="http://dummy.org/circuit_srlatchDesign/FC2_q/1.0"/>
|
||||
</sbol:MapsTo>
|
||||
</sbol:mapsTo>
|
||||
<sbol:mapsTo>
|
||||
<sbol:MapsTo rdf:about="http://dummy.org/circuit_srlatchDesign/M1/MT3/1.0">
|
||||
<sbol:persistentIdentity rdf:resource="http://dummy.org/circuit_srlatchDesign/M1/MT3"/>
|
||||
|
|
@ -371,16 +381,6 @@
|
|||
<sbol:displayId>MT5</sbol:displayId>
|
||||
<sbol:version>1.0</sbol:version>
|
||||
<sbol:refinement rdf:resource="http://sbols.org/v2#useLocal"/>
|
||||
<sbol:remote rdf:resource="http://dummy.org/circuit_qnot/FC19_q/1.0"/>
|
||||
<sbol:local rdf:resource="http://dummy.org/circuit_srlatchDesign/FC2_q/1.0"/>
|
||||
</sbol:MapsTo>
|
||||
</sbol:mapsTo>
|
||||
<sbol:mapsTo>
|
||||
<sbol:MapsTo rdf:about="http://dummy.org/circuit_srlatchDesign/M1/MT4/1.0">
|
||||
<sbol:persistentIdentity rdf:resource="http://dummy.org/circuit_srlatchDesign/M1/MT4"/>
|
||||
<sbol:displayId>MT4</sbol:displayId>
|
||||
<sbol:version>1.0</sbol:version>
|
||||
<sbol:refinement rdf:resource="http://sbols.org/v2#useLocal"/>
|
||||
<sbol:remote rdf:resource="http://dummy.org/circuit_qnot/FC18_s/1.0"/>
|
||||
<sbol:local rdf:resource="http://dummy.org/circuit_srlatchDesign/FC0_s/1.0"/>
|
||||
</sbol:MapsTo>
|
||||
|
|
@ -393,15 +393,25 @@
|
|||
<sbol:displayId>circuit_q</sbol:displayId>
|
||||
<sbol:version>1.0</sbol:version>
|
||||
<sbol:functionalComponent>
|
||||
<sbol:FunctionalComponent rdf:about="http://dummy.org/circuit_q/FC11_qnot/1.0">
|
||||
<sbol:persistentIdentity rdf:resource="http://dummy.org/circuit_q/FC11_qnot"/>
|
||||
<sbol:displayId>FC11_qnot</sbol:displayId>
|
||||
<sbol:FunctionalComponent rdf:about="http://dummy.org/circuit_q/FC10_r/1.0">
|
||||
<sbol:persistentIdentity rdf:resource="http://dummy.org/circuit_q/FC10_r"/>
|
||||
<sbol:displayId>FC10_r</sbol:displayId>
|
||||
<sbol:version>1.0</sbol:version>
|
||||
<sbol:definition rdf:resource="http://dummy.org/CD3_qnot/1.0"/>
|
||||
<sbol:definition rdf:resource="http://dummy.org/CD1_r/1.0"/>
|
||||
<sbol:access rdf:resource="http://sbols.org/v2#public"/>
|
||||
<sbol:direction rdf:resource="http://sbols.org/v2#in"/>
|
||||
</sbol:FunctionalComponent>
|
||||
</sbol:functionalComponent>
|
||||
<sbol:functionalComponent>
|
||||
<sbol:FunctionalComponent rdf:about="http://dummy.org/circuit_q/FC6_wiredProtein/1.0">
|
||||
<sbol:persistentIdentity rdf:resource="http://dummy.org/circuit_q/FC6_wiredProtein"/>
|
||||
<sbol:displayId>FC6_wiredProtein</sbol:displayId>
|
||||
<sbol:version>1.0</sbol:version>
|
||||
<sbol:definition rdf:resource="http://dummy.org/CD9_wiredProtein/1.0"/>
|
||||
<sbol:access rdf:resource="http://sbols.org/v2#public"/>
|
||||
<sbol:direction rdf:resource="http://sbols.org/v2#inout"/>
|
||||
</sbol:FunctionalComponent>
|
||||
</sbol:functionalComponent>
|
||||
<sbol:functionalComponent>
|
||||
<sbol:FunctionalComponent rdf:about="http://dummy.org/circuit_q/FC5_notTU/1.0">
|
||||
<sbol:persistentIdentity rdf:resource="http://dummy.org/circuit_q/FC5_notTU"/>
|
||||
|
|
@ -412,16 +422,6 @@
|
|||
<sbol:direction rdf:resource="http://sbols.org/v2#none"/>
|
||||
</sbol:FunctionalComponent>
|
||||
</sbol:functionalComponent>
|
||||
<sbol:functionalComponent>
|
||||
<sbol:FunctionalComponent rdf:about="http://dummy.org/circuit_q/FC9_norTU/1.0">
|
||||
<sbol:persistentIdentity rdf:resource="http://dummy.org/circuit_q/FC9_norTU"/>
|
||||
<sbol:displayId>FC9_norTU</sbol:displayId>
|
||||
<sbol:version>1.0</sbol:version>
|
||||
<sbol:definition rdf:resource="http://dummy.org/CD18_norTU/1.0"/>
|
||||
<sbol:access rdf:resource="http://sbols.org/v2#public"/>
|
||||
<sbol:direction rdf:resource="http://sbols.org/v2#none"/>
|
||||
</sbol:FunctionalComponent>
|
||||
</sbol:functionalComponent>
|
||||
<sbol:functionalComponent>
|
||||
<sbol:FunctionalComponent rdf:about="http://dummy.org/circuit_q/FC4_q/1.0">
|
||||
<sbol:persistentIdentity rdf:resource="http://dummy.org/circuit_q/FC4_q"/>
|
||||
|
|
@ -432,16 +432,6 @@
|
|||
<sbol:direction rdf:resource="http://sbols.org/v2#out"/>
|
||||
</sbol:FunctionalComponent>
|
||||
</sbol:functionalComponent>
|
||||
<sbol:functionalComponent>
|
||||
<sbol:FunctionalComponent rdf:about="http://dummy.org/circuit_q/FC10_r/1.0">
|
||||
<sbol:persistentIdentity rdf:resource="http://dummy.org/circuit_q/FC10_r"/>
|
||||
<sbol:displayId>FC10_r</sbol:displayId>
|
||||
<sbol:version>1.0</sbol:version>
|
||||
<sbol:definition rdf:resource="http://dummy.org/CD1_r/1.0"/>
|
||||
<sbol:access rdf:resource="http://sbols.org/v2#public"/>
|
||||
<sbol:direction rdf:resource="http://sbols.org/v2#in"/>
|
||||
</sbol:FunctionalComponent>
|
||||
</sbol:functionalComponent>
|
||||
<sbol:functionalComponent>
|
||||
<sbol:FunctionalComponent rdf:about="http://dummy.org/circuit_q/FC7_notTU/1.0">
|
||||
<sbol:persistentIdentity rdf:resource="http://dummy.org/circuit_q/FC7_notTU"/>
|
||||
|
|
@ -453,13 +443,13 @@
|
|||
</sbol:FunctionalComponent>
|
||||
</sbol:functionalComponent>
|
||||
<sbol:functionalComponent>
|
||||
<sbol:FunctionalComponent rdf:about="http://dummy.org/circuit_q/FC6_wiredProtein/1.0">
|
||||
<sbol:persistentIdentity rdf:resource="http://dummy.org/circuit_q/FC6_wiredProtein"/>
|
||||
<sbol:displayId>FC6_wiredProtein</sbol:displayId>
|
||||
<sbol:FunctionalComponent rdf:about="http://dummy.org/circuit_q/FC9_norTU/1.0">
|
||||
<sbol:persistentIdentity rdf:resource="http://dummy.org/circuit_q/FC9_norTU"/>
|
||||
<sbol:displayId>FC9_norTU</sbol:displayId>
|
||||
<sbol:version>1.0</sbol:version>
|
||||
<sbol:definition rdf:resource="http://dummy.org/CD9_wiredProtein/1.0"/>
|
||||
<sbol:definition rdf:resource="http://dummy.org/CD18_norTU/1.0"/>
|
||||
<sbol:access rdf:resource="http://sbols.org/v2#public"/>
|
||||
<sbol:direction rdf:resource="http://sbols.org/v2#inout"/>
|
||||
<sbol:direction rdf:resource="http://sbols.org/v2#none"/>
|
||||
</sbol:FunctionalComponent>
|
||||
</sbol:functionalComponent>
|
||||
<sbol:functionalComponent>
|
||||
|
|
@ -472,6 +462,16 @@
|
|||
<sbol:direction rdf:resource="http://sbols.org/v2#inout"/>
|
||||
</sbol:FunctionalComponent>
|
||||
</sbol:functionalComponent>
|
||||
<sbol:functionalComponent>
|
||||
<sbol:FunctionalComponent rdf:about="http://dummy.org/circuit_q/FC11_qnot/1.0">
|
||||
<sbol:persistentIdentity rdf:resource="http://dummy.org/circuit_q/FC11_qnot"/>
|
||||
<sbol:displayId>FC11_qnot</sbol:displayId>
|
||||
<sbol:version>1.0</sbol:version>
|
||||
<sbol:definition rdf:resource="http://dummy.org/CD3_qnot/1.0"/>
|
||||
<sbol:access rdf:resource="http://sbols.org/v2#public"/>
|
||||
<sbol:direction rdf:resource="http://sbols.org/v2#in"/>
|
||||
</sbol:FunctionalComponent>
|
||||
</sbol:functionalComponent>
|
||||
<sbol:interaction>
|
||||
<sbol:Interaction rdf:about="http://dummy.org/circuit_q/I3_Prod/1.0">
|
||||
<sbol:persistentIdentity rdf:resource="http://dummy.org/circuit_q/I3_Prod"/>
|
||||
|
|
@ -662,12 +662,12 @@
|
|||
<sbol:type rdf:resource="http://www.biopax.org/release/biopax-level3.owl#DnaRegion"/>
|
||||
<sbol:role rdf:resource="http://identifiers.org/so/SO:0000804"/>
|
||||
<sbol:component>
|
||||
<sbol:Component rdf:about="http://dummy.org/CD5_notTU/C2_part/1.0">
|
||||
<sbol:persistentIdentity rdf:resource="http://dummy.org/CD5_notTU/C2_part"/>
|
||||
<sbol:displayId>C2_part</sbol:displayId>
|
||||
<sbol:Component rdf:about="http://dummy.org/CD5_notTU/C1_part/1.0">
|
||||
<sbol:persistentIdentity rdf:resource="http://dummy.org/CD5_notTU/C1_part"/>
|
||||
<sbol:displayId>C1_part</sbol:displayId>
|
||||
<sbol:version>1.0</sbol:version>
|
||||
<sbol:access rdf:resource="http://sbols.org/v2#private"/>
|
||||
<sbol:definition rdf:resource="http://dummy.org/CD7_cds/1.0"/>
|
||||
<sbol:definition rdf:resource="http://dummy.org/CD6_ribosome/1.0"/>
|
||||
</sbol:Component>
|
||||
</sbol:component>
|
||||
<sbol:component>
|
||||
|
|
@ -679,15 +679,6 @@
|
|||
<sbol:definition rdf:resource="http://dummy.org/CD4_promoter/1.0"/>
|
||||
</sbol:Component>
|
||||
</sbol:component>
|
||||
<sbol:component>
|
||||
<sbol:Component rdf:about="http://dummy.org/CD5_notTU/C1_part/1.0">
|
||||
<sbol:persistentIdentity rdf:resource="http://dummy.org/CD5_notTU/C1_part"/>
|
||||
<sbol:displayId>C1_part</sbol:displayId>
|
||||
<sbol:version>1.0</sbol:version>
|
||||
<sbol:access rdf:resource="http://sbols.org/v2#private"/>
|
||||
<sbol:definition rdf:resource="http://dummy.org/CD6_ribosome/1.0"/>
|
||||
</sbol:Component>
|
||||
</sbol:component>
|
||||
<sbol:component>
|
||||
<sbol:Component rdf:about="http://dummy.org/CD5_notTU/C3_part/1.0">
|
||||
<sbol:persistentIdentity rdf:resource="http://dummy.org/CD5_notTU/C3_part"/>
|
||||
|
|
@ -697,6 +688,15 @@
|
|||
<sbol:definition rdf:resource="http://dummy.org/CD8_terminator/1.0"/>
|
||||
</sbol:Component>
|
||||
</sbol:component>
|
||||
<sbol:component>
|
||||
<sbol:Component rdf:about="http://dummy.org/CD5_notTU/C2_part/1.0">
|
||||
<sbol:persistentIdentity rdf:resource="http://dummy.org/CD5_notTU/C2_part"/>
|
||||
<sbol:displayId>C2_part</sbol:displayId>
|
||||
<sbol:version>1.0</sbol:version>
|
||||
<sbol:access rdf:resource="http://sbols.org/v2#private"/>
|
||||
<sbol:definition rdf:resource="http://dummy.org/CD7_cds/1.0"/>
|
||||
</sbol:Component>
|
||||
</sbol:component>
|
||||
</sbol:ComponentDefinition>
|
||||
<sbol:ComponentDefinition rdf:about="http://dummy.org/CD7_cds/1.0">
|
||||
<sbol:persistentIdentity rdf:resource="http://dummy.org/CD7_cds"/>
|
||||
|
|
@ -705,6 +705,58 @@
|
|||
<sbol:type rdf:resource="http://www.biopax.org/release/biopax-level3.owl#DnaRegion"/>
|
||||
<sbol:role rdf:resource="http://identifiers.org/so/SO:0000316"/>
|
||||
</sbol:ComponentDefinition>
|
||||
<sbol:ComponentDefinition rdf:about="http://dummy.org/CD36_norTU/1.0">
|
||||
<sbol:persistentIdentity rdf:resource="http://dummy.org/CD36_norTU"/>
|
||||
<sbol:displayId>CD36_norTU</sbol:displayId>
|
||||
<sbol:version>1.0</sbol:version>
|
||||
<sbol:type rdf:resource="http://www.biopax.org/release/biopax-level3.owl#DnaRegion"/>
|
||||
<sbol:role rdf:resource="http://identifiers.org/so/SO:0000804"/>
|
||||
<sbol:component>
|
||||
<sbol:Component rdf:about="http://dummy.org/CD36_norTU/C23_part/1.0">
|
||||
<sbol:persistentIdentity rdf:resource="http://dummy.org/CD36_norTU/C23_part"/>
|
||||
<sbol:displayId>C23_part</sbol:displayId>
|
||||
<sbol:version>1.0</sbol:version>
|
||||
<sbol:access rdf:resource="http://sbols.org/v2#private"/>
|
||||
<sbol:definition rdf:resource="http://dummy.org/CD37_ribosome/1.0"/>
|
||||
</sbol:Component>
|
||||
</sbol:component>
|
||||
<sbol:component>
|
||||
<sbol:Component rdf:about="http://dummy.org/CD36_norTU/C24_part/1.0">
|
||||
<sbol:persistentIdentity rdf:resource="http://dummy.org/CD36_norTU/C24_part"/>
|
||||
<sbol:displayId>C24_part</sbol:displayId>
|
||||
<sbol:version>1.0</sbol:version>
|
||||
<sbol:access rdf:resource="http://sbols.org/v2#private"/>
|
||||
<sbol:definition rdf:resource="http://dummy.org/CD38_cds/1.0"/>
|
||||
</sbol:Component>
|
||||
</sbol:component>
|
||||
<sbol:component>
|
||||
<sbol:Component rdf:about="http://dummy.org/CD36_norTU/C22_part/1.0">
|
||||
<sbol:persistentIdentity rdf:resource="http://dummy.org/CD36_norTU/C22_part"/>
|
||||
<sbol:displayId>C22_part</sbol:displayId>
|
||||
<sbol:version>1.0</sbol:version>
|
||||
<sbol:access rdf:resource="http://sbols.org/v2#private"/>
|
||||
<sbol:definition rdf:resource="http://dummy.org/CD35_promoter/1.0"/>
|
||||
</sbol:Component>
|
||||
</sbol:component>
|
||||
<sbol:component>
|
||||
<sbol:Component rdf:about="http://dummy.org/CD36_norTU/C21_part/1.0">
|
||||
<sbol:persistentIdentity rdf:resource="http://dummy.org/CD36_norTU/C21_part"/>
|
||||
<sbol:displayId>C21_part</sbol:displayId>
|
||||
<sbol:version>1.0</sbol:version>
|
||||
<sbol:access rdf:resource="http://sbols.org/v2#private"/>
|
||||
<sbol:definition rdf:resource="http://dummy.org/CD34_promoter/1.0"/>
|
||||
</sbol:Component>
|
||||
</sbol:component>
|
||||
<sbol:component>
|
||||
<sbol:Component rdf:about="http://dummy.org/CD36_norTU/C25_part/1.0">
|
||||
<sbol:persistentIdentity rdf:resource="http://dummy.org/CD36_norTU/C25_part"/>
|
||||
<sbol:displayId>C25_part</sbol:displayId>
|
||||
<sbol:version>1.0</sbol:version>
|
||||
<sbol:access rdf:resource="http://sbols.org/v2#private"/>
|
||||
<sbol:definition rdf:resource="http://dummy.org/CD39_terminator/1.0"/>
|
||||
</sbol:Component>
|
||||
</sbol:component>
|
||||
</sbol:ComponentDefinition>
|
||||
<sbol:ComponentDefinition rdf:about="http://dummy.org/CD14_terminator/1.0">
|
||||
<sbol:persistentIdentity rdf:resource="http://dummy.org/CD14_terminator"/>
|
||||
<sbol:displayId>CD14_terminator</sbol:displayId>
|
||||
|
|
@ -767,98 +819,12 @@
|
|||
<sbol:type rdf:resource="http://www.biopax.org/release/biopax-level3.owl#DnaRegion"/>
|
||||
<sbol:role rdf:resource="http://identifiers.org/so/SO:0000316"/>
|
||||
</sbol:ComponentDefinition>
|
||||
<sbol:ComponentDefinition rdf:about="http://dummy.org/CD23_notTU/1.0">
|
||||
<sbol:persistentIdentity rdf:resource="http://dummy.org/CD23_notTU"/>
|
||||
<sbol:displayId>CD23_notTU</sbol:displayId>
|
||||
<sbol:version>1.0</sbol:version>
|
||||
<sbol:type rdf:resource="http://www.biopax.org/release/biopax-level3.owl#DnaRegion"/>
|
||||
<sbol:role rdf:resource="http://identifiers.org/so/SO:0000804"/>
|
||||
<sbol:component>
|
||||
<sbol:Component rdf:about="http://dummy.org/CD23_notTU/C16_part/1.0">
|
||||
<sbol:persistentIdentity rdf:resource="http://dummy.org/CD23_notTU/C16_part"/>
|
||||
<sbol:displayId>C16_part</sbol:displayId>
|
||||
<sbol:version>1.0</sbol:version>
|
||||
<sbol:access rdf:resource="http://sbols.org/v2#private"/>
|
||||
<sbol:definition rdf:resource="http://dummy.org/CD26_terminator/1.0"/>
|
||||
</sbol:Component>
|
||||
</sbol:component>
|
||||
<sbol:component>
|
||||
<sbol:Component rdf:about="http://dummy.org/CD23_notTU/C14_part/1.0">
|
||||
<sbol:persistentIdentity rdf:resource="http://dummy.org/CD23_notTU/C14_part"/>
|
||||
<sbol:displayId>C14_part</sbol:displayId>
|
||||
<sbol:version>1.0</sbol:version>
|
||||
<sbol:access rdf:resource="http://sbols.org/v2#private"/>
|
||||
<sbol:definition rdf:resource="http://dummy.org/CD24_ribosome/1.0"/>
|
||||
</sbol:Component>
|
||||
</sbol:component>
|
||||
<sbol:component>
|
||||
<sbol:Component rdf:about="http://dummy.org/CD23_notTU/C15_part/1.0">
|
||||
<sbol:persistentIdentity rdf:resource="http://dummy.org/CD23_notTU/C15_part"/>
|
||||
<sbol:displayId>C15_part</sbol:displayId>
|
||||
<sbol:version>1.0</sbol:version>
|
||||
<sbol:access rdf:resource="http://sbols.org/v2#private"/>
|
||||
<sbol:definition rdf:resource="http://dummy.org/CD25_cds/1.0"/>
|
||||
</sbol:Component>
|
||||
</sbol:component>
|
||||
<sbol:component>
|
||||
<sbol:Component rdf:about="http://dummy.org/CD23_notTU/C13_part/1.0">
|
||||
<sbol:persistentIdentity rdf:resource="http://dummy.org/CD23_notTU/C13_part"/>
|
||||
<sbol:displayId>C13_part</sbol:displayId>
|
||||
<sbol:version>1.0</sbol:version>
|
||||
<sbol:access rdf:resource="http://sbols.org/v2#private"/>
|
||||
<sbol:definition rdf:resource="http://dummy.org/CD22_promoter/1.0"/>
|
||||
</sbol:Component>
|
||||
</sbol:component>
|
||||
</sbol:ComponentDefinition>
|
||||
<sbol:ComponentDefinition rdf:about="http://dummy.org/CD27_wiredProtein/1.0">
|
||||
<sbol:persistentIdentity rdf:resource="http://dummy.org/CD27_wiredProtein"/>
|
||||
<sbol:displayId>CD27_wiredProtein</sbol:displayId>
|
||||
<sbol:version>1.0</sbol:version>
|
||||
<sbol:type rdf:resource="http://www.biopax.org/release/biopax-level3.owl#Protein"/>
|
||||
</sbol:ComponentDefinition>
|
||||
<sbol:ComponentDefinition rdf:about="http://dummy.org/CD11_notTU/1.0">
|
||||
<sbol:persistentIdentity rdf:resource="http://dummy.org/CD11_notTU"/>
|
||||
<sbol:displayId>CD11_notTU</sbol:displayId>
|
||||
<sbol:version>1.0</sbol:version>
|
||||
<sbol:type rdf:resource="http://www.biopax.org/release/biopax-level3.owl#DnaRegion"/>
|
||||
<sbol:role rdf:resource="http://identifiers.org/so/SO:0000804"/>
|
||||
<sbol:component>
|
||||
<sbol:Component rdf:about="http://dummy.org/CD11_notTU/C6_part/1.0">
|
||||
<sbol:persistentIdentity rdf:resource="http://dummy.org/CD11_notTU/C6_part"/>
|
||||
<sbol:displayId>C6_part</sbol:displayId>
|
||||
<sbol:version>1.0</sbol:version>
|
||||
<sbol:access rdf:resource="http://sbols.org/v2#private"/>
|
||||
<sbol:definition rdf:resource="http://dummy.org/CD13_cds/1.0"/>
|
||||
</sbol:Component>
|
||||
</sbol:component>
|
||||
<sbol:component>
|
||||
<sbol:Component rdf:about="http://dummy.org/CD11_notTU/C5_part/1.0">
|
||||
<sbol:persistentIdentity rdf:resource="http://dummy.org/CD11_notTU/C5_part"/>
|
||||
<sbol:displayId>C5_part</sbol:displayId>
|
||||
<sbol:version>1.0</sbol:version>
|
||||
<sbol:access rdf:resource="http://sbols.org/v2#private"/>
|
||||
<sbol:definition rdf:resource="http://dummy.org/CD12_ribosome/1.0"/>
|
||||
</sbol:Component>
|
||||
</sbol:component>
|
||||
<sbol:component>
|
||||
<sbol:Component rdf:about="http://dummy.org/CD11_notTU/C7_part/1.0">
|
||||
<sbol:persistentIdentity rdf:resource="http://dummy.org/CD11_notTU/C7_part"/>
|
||||
<sbol:displayId>C7_part</sbol:displayId>
|
||||
<sbol:version>1.0</sbol:version>
|
||||
<sbol:access rdf:resource="http://sbols.org/v2#private"/>
|
||||
<sbol:definition rdf:resource="http://dummy.org/CD14_terminator/1.0"/>
|
||||
</sbol:Component>
|
||||
</sbol:component>
|
||||
<sbol:component>
|
||||
<sbol:Component rdf:about="http://dummy.org/CD11_notTU/C4_part/1.0">
|
||||
<sbol:persistentIdentity rdf:resource="http://dummy.org/CD11_notTU/C4_part"/>
|
||||
<sbol:displayId>C4_part</sbol:displayId>
|
||||
<sbol:version>1.0</sbol:version>
|
||||
<sbol:access rdf:resource="http://sbols.org/v2#private"/>
|
||||
<sbol:definition rdf:resource="http://dummy.org/CD10_promoter/1.0"/>
|
||||
</sbol:Component>
|
||||
</sbol:component>
|
||||
</sbol:ComponentDefinition>
|
||||
<sbol:ComponentDefinition rdf:about="http://dummy.org/CD8_terminator/1.0">
|
||||
<sbol:persistentIdentity rdf:resource="http://dummy.org/CD8_terminator"/>
|
||||
<sbol:displayId>CD8_terminator</sbol:displayId>
|
||||
|
|
@ -866,77 +832,6 @@
|
|||
<sbol:type rdf:resource="http://www.biopax.org/release/biopax-level3.owl#DnaRegion"/>
|
||||
<sbol:role rdf:resource="http://identifiers.org/so/SO:0000141"/>
|
||||
</sbol:ComponentDefinition>
|
||||
<sbol:ComponentDefinition rdf:about="http://dummy.org/CD18_norTU/1.0">
|
||||
<sbol:persistentIdentity rdf:resource="http://dummy.org/CD18_norTU"/>
|
||||
<sbol:displayId>CD18_norTU</sbol:displayId>
|
||||
<sbol:version>1.0</sbol:version>
|
||||
<sbol:type rdf:resource="http://www.biopax.org/release/biopax-level3.owl#DnaRegion"/>
|
||||
<sbol:role rdf:resource="http://identifiers.org/so/SO:0000804"/>
|
||||
<sbol:component>
|
||||
<sbol:Component rdf:about="http://dummy.org/CD18_norTU/C9_part/1.0">
|
||||
<sbol:persistentIdentity rdf:resource="http://dummy.org/CD18_norTU/C9_part"/>
|
||||
<sbol:displayId>C9_part</sbol:displayId>
|
||||
<sbol:version>1.0</sbol:version>
|
||||
<sbol:access rdf:resource="http://sbols.org/v2#private"/>
|
||||
<sbol:definition rdf:resource="http://dummy.org/CD17_promoter/1.0"/>
|
||||
</sbol:Component>
|
||||
</sbol:component>
|
||||
<sbol:component>
|
||||
<sbol:Component rdf:about="http://dummy.org/CD18_norTU/C11_part/1.0">
|
||||
<sbol:persistentIdentity rdf:resource="http://dummy.org/CD18_norTU/C11_part"/>
|
||||
<sbol:displayId>C11_part</sbol:displayId>
|
||||
<sbol:version>1.0</sbol:version>
|
||||
<sbol:access rdf:resource="http://sbols.org/v2#private"/>
|
||||
<sbol:definition rdf:resource="http://dummy.org/CD20_cds/1.0"/>
|
||||
</sbol:Component>
|
||||
</sbol:component>
|
||||
<sbol:component>
|
||||
<sbol:Component rdf:about="http://dummy.org/CD18_norTU/C12_part/1.0">
|
||||
<sbol:persistentIdentity rdf:resource="http://dummy.org/CD18_norTU/C12_part"/>
|
||||
<sbol:displayId>C12_part</sbol:displayId>
|
||||
<sbol:version>1.0</sbol:version>
|
||||
<sbol:access rdf:resource="http://sbols.org/v2#private"/>
|
||||
<sbol:definition rdf:resource="http://dummy.org/CD21_terminator/1.0"/>
|
||||
</sbol:Component>
|
||||
</sbol:component>
|
||||
<sbol:component>
|
||||
<sbol:Component rdf:about="http://dummy.org/CD18_norTU/C10_part/1.0">
|
||||
<sbol:persistentIdentity rdf:resource="http://dummy.org/CD18_norTU/C10_part"/>
|
||||
<sbol:displayId>C10_part</sbol:displayId>
|
||||
<sbol:version>1.0</sbol:version>
|
||||
<sbol:access rdf:resource="http://sbols.org/v2#private"/>
|
||||
<sbol:definition rdf:resource="http://dummy.org/CD19_ribosome/1.0"/>
|
||||
</sbol:Component>
|
||||
</sbol:component>
|
||||
<sbol:component>
|
||||
<sbol:Component rdf:about="http://dummy.org/CD18_norTU/C8_part/1.0">
|
||||
<sbol:persistentIdentity rdf:resource="http://dummy.org/CD18_norTU/C8_part"/>
|
||||
<sbol:displayId>C8_part</sbol:displayId>
|
||||
<sbol:version>1.0</sbol:version>
|
||||
<sbol:access rdf:resource="http://sbols.org/v2#private"/>
|
||||
<sbol:definition rdf:resource="http://dummy.org/CD16_promoter/1.0"/>
|
||||
</sbol:Component>
|
||||
</sbol:component>
|
||||
</sbol:ComponentDefinition>
|
||||
<sbol:ComponentDefinition rdf:about="http://dummy.org/CD10_promoter/1.0">
|
||||
<sbol:persistentIdentity rdf:resource="http://dummy.org/CD10_promoter"/>
|
||||
<sbol:displayId>CD10_promoter</sbol:displayId>
|
||||
<sbol:version>1.0</sbol:version>
|
||||
<sbol:type rdf:resource="http://www.biopax.org/release/biopax-level3.owl#DnaRegion"/>
|
||||
<sbol:role rdf:resource="http://identifiers.org/so/SO:0000167"/>
|
||||
</sbol:ComponentDefinition>
|
||||
<sbol:ComponentDefinition rdf:about="http://dummy.org/CD0_s/1.0">
|
||||
<sbol:persistentIdentity rdf:resource="http://dummy.org/CD0_s"/>
|
||||
<sbol:displayId>CD0_s</sbol:displayId>
|
||||
<sbol:version>1.0</sbol:version>
|
||||
<sbol:type rdf:resource="http://www.biopax.org/release/biopax-level3.owl#Protein"/>
|
||||
</sbol:ComponentDefinition>
|
||||
<sbol:ComponentDefinition rdf:about="http://dummy.org/CD9_wiredProtein/1.0">
|
||||
<sbol:persistentIdentity rdf:resource="http://dummy.org/CD9_wiredProtein"/>
|
||||
<sbol:displayId>CD9_wiredProtein</sbol:displayId>
|
||||
<sbol:version>1.0</sbol:version>
|
||||
<sbol:type rdf:resource="http://www.biopax.org/release/biopax-level3.owl#Protein"/>
|
||||
</sbol:ComponentDefinition>
|
||||
<sbol:ComponentDefinition rdf:about="http://dummy.org/CD29_notTU/1.0">
|
||||
<sbol:persistentIdentity rdf:resource="http://dummy.org/CD29_notTU"/>
|
||||
<sbol:displayId>CD29_notTU</sbol:displayId>
|
||||
|
|
@ -980,6 +875,77 @@
|
|||
</sbol:Component>
|
||||
</sbol:component>
|
||||
</sbol:ComponentDefinition>
|
||||
<sbol:ComponentDefinition rdf:about="http://dummy.org/CD18_norTU/1.0">
|
||||
<sbol:persistentIdentity rdf:resource="http://dummy.org/CD18_norTU"/>
|
||||
<sbol:displayId>CD18_norTU</sbol:displayId>
|
||||
<sbol:version>1.0</sbol:version>
|
||||
<sbol:type rdf:resource="http://www.biopax.org/release/biopax-level3.owl#DnaRegion"/>
|
||||
<sbol:role rdf:resource="http://identifiers.org/so/SO:0000804"/>
|
||||
<sbol:component>
|
||||
<sbol:Component rdf:about="http://dummy.org/CD18_norTU/C9_part/1.0">
|
||||
<sbol:persistentIdentity rdf:resource="http://dummy.org/CD18_norTU/C9_part"/>
|
||||
<sbol:displayId>C9_part</sbol:displayId>
|
||||
<sbol:version>1.0</sbol:version>
|
||||
<sbol:access rdf:resource="http://sbols.org/v2#private"/>
|
||||
<sbol:definition rdf:resource="http://dummy.org/CD17_promoter/1.0"/>
|
||||
</sbol:Component>
|
||||
</sbol:component>
|
||||
<sbol:component>
|
||||
<sbol:Component rdf:about="http://dummy.org/CD18_norTU/C11_part/1.0">
|
||||
<sbol:persistentIdentity rdf:resource="http://dummy.org/CD18_norTU/C11_part"/>
|
||||
<sbol:displayId>C11_part</sbol:displayId>
|
||||
<sbol:version>1.0</sbol:version>
|
||||
<sbol:access rdf:resource="http://sbols.org/v2#private"/>
|
||||
<sbol:definition rdf:resource="http://dummy.org/CD20_cds/1.0"/>
|
||||
</sbol:Component>
|
||||
</sbol:component>
|
||||
<sbol:component>
|
||||
<sbol:Component rdf:about="http://dummy.org/CD18_norTU/C8_part/1.0">
|
||||
<sbol:persistentIdentity rdf:resource="http://dummy.org/CD18_norTU/C8_part"/>
|
||||
<sbol:displayId>C8_part</sbol:displayId>
|
||||
<sbol:version>1.0</sbol:version>
|
||||
<sbol:access rdf:resource="http://sbols.org/v2#private"/>
|
||||
<sbol:definition rdf:resource="http://dummy.org/CD16_promoter/1.0"/>
|
||||
</sbol:Component>
|
||||
</sbol:component>
|
||||
<sbol:component>
|
||||
<sbol:Component rdf:about="http://dummy.org/CD18_norTU/C10_part/1.0">
|
||||
<sbol:persistentIdentity rdf:resource="http://dummy.org/CD18_norTU/C10_part"/>
|
||||
<sbol:displayId>C10_part</sbol:displayId>
|
||||
<sbol:version>1.0</sbol:version>
|
||||
<sbol:access rdf:resource="http://sbols.org/v2#private"/>
|
||||
<sbol:definition rdf:resource="http://dummy.org/CD19_ribosome/1.0"/>
|
||||
</sbol:Component>
|
||||
</sbol:component>
|
||||
<sbol:component>
|
||||
<sbol:Component rdf:about="http://dummy.org/CD18_norTU/C12_part/1.0">
|
||||
<sbol:persistentIdentity rdf:resource="http://dummy.org/CD18_norTU/C12_part"/>
|
||||
<sbol:displayId>C12_part</sbol:displayId>
|
||||
<sbol:version>1.0</sbol:version>
|
||||
<sbol:access rdf:resource="http://sbols.org/v2#private"/>
|
||||
<sbol:definition rdf:resource="http://dummy.org/CD21_terminator/1.0"/>
|
||||
</sbol:Component>
|
||||
</sbol:component>
|
||||
</sbol:ComponentDefinition>
|
||||
<sbol:ComponentDefinition rdf:about="http://dummy.org/CD10_promoter/1.0">
|
||||
<sbol:persistentIdentity rdf:resource="http://dummy.org/CD10_promoter"/>
|
||||
<sbol:displayId>CD10_promoter</sbol:displayId>
|
||||
<sbol:version>1.0</sbol:version>
|
||||
<sbol:type rdf:resource="http://www.biopax.org/release/biopax-level3.owl#DnaRegion"/>
|
||||
<sbol:role rdf:resource="http://identifiers.org/so/SO:0000167"/>
|
||||
</sbol:ComponentDefinition>
|
||||
<sbol:ComponentDefinition rdf:about="http://dummy.org/CD0_s/1.0">
|
||||
<sbol:persistentIdentity rdf:resource="http://dummy.org/CD0_s"/>
|
||||
<sbol:displayId>CD0_s</sbol:displayId>
|
||||
<sbol:version>1.0</sbol:version>
|
||||
<sbol:type rdf:resource="http://www.biopax.org/release/biopax-level3.owl#Protein"/>
|
||||
</sbol:ComponentDefinition>
|
||||
<sbol:ComponentDefinition rdf:about="http://dummy.org/CD9_wiredProtein/1.0">
|
||||
<sbol:persistentIdentity rdf:resource="http://dummy.org/CD9_wiredProtein"/>
|
||||
<sbol:displayId>CD9_wiredProtein</sbol:displayId>
|
||||
<sbol:version>1.0</sbol:version>
|
||||
<sbol:type rdf:resource="http://www.biopax.org/release/biopax-level3.owl#Protein"/>
|
||||
</sbol:ComponentDefinition>
|
||||
<sbol:ComponentDefinition rdf:about="http://dummy.org/CD4_promoter/1.0">
|
||||
<sbol:persistentIdentity rdf:resource="http://dummy.org/CD4_promoter"/>
|
||||
<sbol:displayId>CD4_promoter</sbol:displayId>
|
||||
|
|
@ -1021,6 +987,49 @@
|
|||
<sbol:type rdf:resource="http://www.biopax.org/release/biopax-level3.owl#DnaRegion"/>
|
||||
<sbol:role rdf:resource="http://identifiers.org/so/SO:0000167"/>
|
||||
</sbol:ComponentDefinition>
|
||||
<sbol:ComponentDefinition rdf:about="http://dummy.org/CD23_notTU/1.0">
|
||||
<sbol:persistentIdentity rdf:resource="http://dummy.org/CD23_notTU"/>
|
||||
<sbol:displayId>CD23_notTU</sbol:displayId>
|
||||
<sbol:version>1.0</sbol:version>
|
||||
<sbol:type rdf:resource="http://www.biopax.org/release/biopax-level3.owl#DnaRegion"/>
|
||||
<sbol:role rdf:resource="http://identifiers.org/so/SO:0000804"/>
|
||||
<sbol:component>
|
||||
<sbol:Component rdf:about="http://dummy.org/CD23_notTU/C15_part/1.0">
|
||||
<sbol:persistentIdentity rdf:resource="http://dummy.org/CD23_notTU/C15_part"/>
|
||||
<sbol:displayId>C15_part</sbol:displayId>
|
||||
<sbol:version>1.0</sbol:version>
|
||||
<sbol:access rdf:resource="http://sbols.org/v2#private"/>
|
||||
<sbol:definition rdf:resource="http://dummy.org/CD25_cds/1.0"/>
|
||||
</sbol:Component>
|
||||
</sbol:component>
|
||||
<sbol:component>
|
||||
<sbol:Component rdf:about="http://dummy.org/CD23_notTU/C16_part/1.0">
|
||||
<sbol:persistentIdentity rdf:resource="http://dummy.org/CD23_notTU/C16_part"/>
|
||||
<sbol:displayId>C16_part</sbol:displayId>
|
||||
<sbol:version>1.0</sbol:version>
|
||||
<sbol:access rdf:resource="http://sbols.org/v2#private"/>
|
||||
<sbol:definition rdf:resource="http://dummy.org/CD26_terminator/1.0"/>
|
||||
</sbol:Component>
|
||||
</sbol:component>
|
||||
<sbol:component>
|
||||
<sbol:Component rdf:about="http://dummy.org/CD23_notTU/C14_part/1.0">
|
||||
<sbol:persistentIdentity rdf:resource="http://dummy.org/CD23_notTU/C14_part"/>
|
||||
<sbol:displayId>C14_part</sbol:displayId>
|
||||
<sbol:version>1.0</sbol:version>
|
||||
<sbol:access rdf:resource="http://sbols.org/v2#private"/>
|
||||
<sbol:definition rdf:resource="http://dummy.org/CD24_ribosome/1.0"/>
|
||||
</sbol:Component>
|
||||
</sbol:component>
|
||||
<sbol:component>
|
||||
<sbol:Component rdf:about="http://dummy.org/CD23_notTU/C13_part/1.0">
|
||||
<sbol:persistentIdentity rdf:resource="http://dummy.org/CD23_notTU/C13_part"/>
|
||||
<sbol:displayId>C13_part</sbol:displayId>
|
||||
<sbol:version>1.0</sbol:version>
|
||||
<sbol:access rdf:resource="http://sbols.org/v2#private"/>
|
||||
<sbol:definition rdf:resource="http://dummy.org/CD22_promoter/1.0"/>
|
||||
</sbol:Component>
|
||||
</sbol:component>
|
||||
</sbol:ComponentDefinition>
|
||||
<sbol:ComponentDefinition rdf:about="http://dummy.org/CD12_ribosome/1.0">
|
||||
<sbol:persistentIdentity rdf:resource="http://dummy.org/CD12_ribosome"/>
|
||||
<sbol:displayId>CD12_ribosome</sbol:displayId>
|
||||
|
|
@ -1062,6 +1071,49 @@
|
|||
<sbol:type rdf:resource="http://www.biopax.org/release/biopax-level3.owl#DnaRegion"/>
|
||||
<sbol:role rdf:resource="http://identifiers.org/so/SO:0000316"/>
|
||||
</sbol:ComponentDefinition>
|
||||
<sbol:ComponentDefinition rdf:about="http://dummy.org/CD11_notTU/1.0">
|
||||
<sbol:persistentIdentity rdf:resource="http://dummy.org/CD11_notTU"/>
|
||||
<sbol:displayId>CD11_notTU</sbol:displayId>
|
||||
<sbol:version>1.0</sbol:version>
|
||||
<sbol:type rdf:resource="http://www.biopax.org/release/biopax-level3.owl#DnaRegion"/>
|
||||
<sbol:role rdf:resource="http://identifiers.org/so/SO:0000804"/>
|
||||
<sbol:component>
|
||||
<sbol:Component rdf:about="http://dummy.org/CD11_notTU/C6_part/1.0">
|
||||
<sbol:persistentIdentity rdf:resource="http://dummy.org/CD11_notTU/C6_part"/>
|
||||
<sbol:displayId>C6_part</sbol:displayId>
|
||||
<sbol:version>1.0</sbol:version>
|
||||
<sbol:access rdf:resource="http://sbols.org/v2#private"/>
|
||||
<sbol:definition rdf:resource="http://dummy.org/CD13_cds/1.0"/>
|
||||
</sbol:Component>
|
||||
</sbol:component>
|
||||
<sbol:component>
|
||||
<sbol:Component rdf:about="http://dummy.org/CD11_notTU/C7_part/1.0">
|
||||
<sbol:persistentIdentity rdf:resource="http://dummy.org/CD11_notTU/C7_part"/>
|
||||
<sbol:displayId>C7_part</sbol:displayId>
|
||||
<sbol:version>1.0</sbol:version>
|
||||
<sbol:access rdf:resource="http://sbols.org/v2#private"/>
|
||||
<sbol:definition rdf:resource="http://dummy.org/CD14_terminator/1.0"/>
|
||||
</sbol:Component>
|
||||
</sbol:component>
|
||||
<sbol:component>
|
||||
<sbol:Component rdf:about="http://dummy.org/CD11_notTU/C5_part/1.0">
|
||||
<sbol:persistentIdentity rdf:resource="http://dummy.org/CD11_notTU/C5_part"/>
|
||||
<sbol:displayId>C5_part</sbol:displayId>
|
||||
<sbol:version>1.0</sbol:version>
|
||||
<sbol:access rdf:resource="http://sbols.org/v2#private"/>
|
||||
<sbol:definition rdf:resource="http://dummy.org/CD12_ribosome/1.0"/>
|
||||
</sbol:Component>
|
||||
</sbol:component>
|
||||
<sbol:component>
|
||||
<sbol:Component rdf:about="http://dummy.org/CD11_notTU/C4_part/1.0">
|
||||
<sbol:persistentIdentity rdf:resource="http://dummy.org/CD11_notTU/C4_part"/>
|
||||
<sbol:displayId>C4_part</sbol:displayId>
|
||||
<sbol:version>1.0</sbol:version>
|
||||
<sbol:access rdf:resource="http://sbols.org/v2#private"/>
|
||||
<sbol:definition rdf:resource="http://dummy.org/CD10_promoter/1.0"/>
|
||||
</sbol:Component>
|
||||
</sbol:component>
|
||||
</sbol:ComponentDefinition>
|
||||
<sbol:ComponentDefinition rdf:about="http://dummy.org/CD26_terminator/1.0">
|
||||
<sbol:persistentIdentity rdf:resource="http://dummy.org/CD26_terminator"/>
|
||||
<sbol:displayId>CD26_terminator</sbol:displayId>
|
||||
|
|
@ -1109,56 +1161,4 @@
|
|||
<sbol:version>1.0</sbol:version>
|
||||
<sbol:type rdf:resource="http://www.biopax.org/release/biopax-level3.owl#Protein"/>
|
||||
</sbol:ComponentDefinition>
|
||||
<sbol:ComponentDefinition rdf:about="http://dummy.org/CD36_norTU/1.0">
|
||||
<sbol:persistentIdentity rdf:resource="http://dummy.org/CD36_norTU"/>
|
||||
<sbol:displayId>CD36_norTU</sbol:displayId>
|
||||
<sbol:version>1.0</sbol:version>
|
||||
<sbol:type rdf:resource="http://www.biopax.org/release/biopax-level3.owl#DnaRegion"/>
|
||||
<sbol:role rdf:resource="http://identifiers.org/so/SO:0000804"/>
|
||||
<sbol:component>
|
||||
<sbol:Component rdf:about="http://dummy.org/CD36_norTU/C23_part/1.0">
|
||||
<sbol:persistentIdentity rdf:resource="http://dummy.org/CD36_norTU/C23_part"/>
|
||||
<sbol:displayId>C23_part</sbol:displayId>
|
||||
<sbol:version>1.0</sbol:version>
|
||||
<sbol:access rdf:resource="http://sbols.org/v2#private"/>
|
||||
<sbol:definition rdf:resource="http://dummy.org/CD37_ribosome/1.0"/>
|
||||
</sbol:Component>
|
||||
</sbol:component>
|
||||
<sbol:component>
|
||||
<sbol:Component rdf:about="http://dummy.org/CD36_norTU/C21_part/1.0">
|
||||
<sbol:persistentIdentity rdf:resource="http://dummy.org/CD36_norTU/C21_part"/>
|
||||
<sbol:displayId>C21_part</sbol:displayId>
|
||||
<sbol:version>1.0</sbol:version>
|
||||
<sbol:access rdf:resource="http://sbols.org/v2#private"/>
|
||||
<sbol:definition rdf:resource="http://dummy.org/CD34_promoter/1.0"/>
|
||||
</sbol:Component>
|
||||
</sbol:component>
|
||||
<sbol:component>
|
||||
<sbol:Component rdf:about="http://dummy.org/CD36_norTU/C24_part/1.0">
|
||||
<sbol:persistentIdentity rdf:resource="http://dummy.org/CD36_norTU/C24_part"/>
|
||||
<sbol:displayId>C24_part</sbol:displayId>
|
||||
<sbol:version>1.0</sbol:version>
|
||||
<sbol:access rdf:resource="http://sbols.org/v2#private"/>
|
||||
<sbol:definition rdf:resource="http://dummy.org/CD38_cds/1.0"/>
|
||||
</sbol:Component>
|
||||
</sbol:component>
|
||||
<sbol:component>
|
||||
<sbol:Component rdf:about="http://dummy.org/CD36_norTU/C25_part/1.0">
|
||||
<sbol:persistentIdentity rdf:resource="http://dummy.org/CD36_norTU/C25_part"/>
|
||||
<sbol:displayId>C25_part</sbol:displayId>
|
||||
<sbol:version>1.0</sbol:version>
|
||||
<sbol:access rdf:resource="http://sbols.org/v2#private"/>
|
||||
<sbol:definition rdf:resource="http://dummy.org/CD39_terminator/1.0"/>
|
||||
</sbol:Component>
|
||||
</sbol:component>
|
||||
<sbol:component>
|
||||
<sbol:Component rdf:about="http://dummy.org/CD36_norTU/C22_part/1.0">
|
||||
<sbol:persistentIdentity rdf:resource="http://dummy.org/CD36_norTU/C22_part"/>
|
||||
<sbol:displayId>C22_part</sbol:displayId>
|
||||
<sbol:version>1.0</sbol:version>
|
||||
<sbol:access rdf:resource="http://sbols.org/v2#private"/>
|
||||
<sbol:definition rdf:resource="http://dummy.org/CD35_promoter/1.0"/>
|
||||
</sbol:Component>
|
||||
</sbol:component>
|
||||
</sbol:ComponentDefinition>
|
||||
</rdf:RDF>
|
||||
|
|
@ -31,8 +31,12 @@
|
|||
</functionDefinition>
|
||||
</listOfFunctionDefinitions>
|
||||
<listOfParameters>
|
||||
<parameter constant="false" id="q" sboTerm="SBO:0000602" value="0"/>
|
||||
<parameter constant="false" id="ack" sboTerm="SBO:0000602" value="0"/>
|
||||
<parameter constant="false" id="q" sboTerm="SBO:0000602" value="0">
|
||||
<comp:replacedBy xmlns:comp="http://www.sbml.org/sbml/level3/version1/comp/version1" comp:portRef="srlatch_imp__q" comp:submodelRef="sl_instance"/>
|
||||
</parameter>
|
||||
<parameter constant="false" id="ack" sboTerm="SBO:0000602" value="0">
|
||||
<comp:replacedBy xmlns:comp="http://www.sbml.org/sbml/level3/version1/comp/version1" comp:portRef="srlatch_imp__ack" comp:submodelRef="sl_instance"/>
|
||||
</parameter>
|
||||
<parameter constant="false" id="s" sboTerm="SBO:0000602" value="0">
|
||||
<comp:listOfReplacedElements xmlns:comp="http://www.sbml.org/sbml/level3/version1/comp/version1">
|
||||
<comp:replacedElement comp:portRef="srlatch_imp__s" comp:submodelRef="sl_instance"/>
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue