<?xml version="1.0"?>
<rdf:RDF
    xmlns:rss="http://purl.org/rss/1.0/"
    xmlns:bib="http://monet.nag.co.uk/bibliography#"
    xmlns="http://monet.nag.co.uk/algorithm#"
    xmlns:jms="http://jena.hpl.hp.com/2003/08/jms#"
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#"
    xmlns:owl="http://www.w3.org/2002/07/owl#"
    xmlns:vcard="http://www.w3.org/2001/vcard-rdf/3.0#"
    xmlns:daml="http://www.daml.org/2001/03/daml+oil#"
    xmlns:dc="http://purl.org/dc/elements/1.1/"
  xml:base="http://monet.nag.co.uk/algorithm">
  <owl:Ontology rdf:about="">
    <owl:imports>
      <owl:Ontology rdf:about="http://monet.nag.co.uk/cgi-bin/cvsweb.cgi/~checkout~/owl/protege/bibliography.owl?rev=HEAD"/>
    </owl:imports>
  </owl:Ontology>
  <owl:Class rdf:ID="Polynomial_Roots">
    <rdfs:subClassOf>
      <owl:Class rdf:about="#Root_Finding"/>
    </rdfs:subClassOf>
  </owl:Class>
  <owl:Class rdf:ID="Multiplication">
    <rdfs:subClassOf>
      <owl:Class rdf:about="#Arithmetic"/>
    </rdfs:subClassOf>
  </owl:Class>
  <owl:Class rdf:ID="ODE">
    <rdfs:subClassOf>
      <owl:Class rdf:about="#Symbolic"/>
    </rdfs:subClassOf>
  </owl:Class>
  <owl:Class rdf:ID="Polylogarithmic">
    <rdfs:comment>There is a constant k such that the resource is bound by O(log**k n), where n is the size of the input.</rdfs:comment>
    <rdfs:subClassOf>
      <owl:Class rdf:about="#ResourceBound"/>
    </rdfs:subClassOf>
  </owl:Class>
  <owl:Class rdf:ID="PolyInt_GCD">
    <rdfs:subClassOf>
      <owl:Class rdf:about="#GCD"/>
    </rdfs:subClassOf>
  </owl:Class>
  <owl:Class rdf:ID="Newton">
    <rdfs:subClassOf>
      <owl:Class rdf:about="#Unconstrained_Optimisation"/>
    </rdfs:subClassOf>
  </owl:Class>
  <owl:Class rdf:ID="DTM">
    <rdfs:subClassOf>
      <owl:Class rdf:about="#NDTM"/>
    </rdfs:subClassOf>
    <rdfs:comment>Deterministic TM</rdfs:comment>
  </owl:Class>
  <owl:Class rdf:ID="Resultant">
    <rdfs:subClassOf>
      <owl:Class rdf:about="#Symbolic"/>
    </rdfs:subClassOf>
  </owl:Class>
  <owl:Class rdf:ID="Hilbert">
    <rdfs:subClassOf>
      <owl:Class rdf:about="#GroebnerBasis"/>
    </rdfs:subClassOf>
  </owl:Class>
  <owl:Class rdf:ID="ComplexityClasses">
    <rdfs:subClassOf>
      <owl:Class rdf:ID="Complexity"/>
    </rdfs:subClassOf>
  </owl:Class>
  <owl:Class rdf:ID="STM">
    <rdfs:comment>Stochastyc TM</rdfs:comment>
    <rdfs:subClassOf>
      <owl:Class rdf:about="#ComputationModel"/>
    </rdfs:subClassOf>
  </owl:Class>
  <owl:Class rdf:ID="PolyQ_GCD">
    <rdfs:subClassOf>
      <owl:Class rdf:about="#GCD"/>
    </rdfs:subClassOf>
  </owl:Class>
  <owl:Class rdf:ID="Factorization">
    <rdfs:subClassOf>
      <owl:Class rdf:about="#Arithmetic"/>
    </rdfs:subClassOf>
  </owl:Class>
  <owl:Class rdf:ID="Gauss-Legendre">
    <rdfs:subClassOf>
      <owl:Class rdf:about="#Fixed_Abscissae_Methods"/>
    </rdfs:subClassOf>
  </owl:Class>
  <owl:Class rdf:ID="FGLM">
    <rdfs:subClassOf>
      <owl:Class rdf:about="#GroebnerBasis"/>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty>
          <owl:ObjectProperty rdf:about="#bibliographic_reference"/>
        </owl:onProperty>
        <owl:someValuesFrom rdf:resource="http://monet.nag.co.uk/bibliography#MR1263871"/>
      </owl:Restriction>
    </rdfs:subClassOf>
  </owl:Class>
  <owl:Class rdf:ID="P">
    <rdfs:subClassOf>
      <owl:Class rdf:about="#Time"/>
    </rdfs:subClassOf>
    <rdfs:comment>Languages recognizable by polynomially time bounded deterministic TMs. Identiifes the informal definition of "efficiently solvable"</rdfs:comment>
    <rdfs:subClassOf>
      <owl:Class>
        <owl:intersectionOf rdf:parseType="Collection">
          <owl:Restriction>
            <owl:allValuesFrom rdf:resource="#DTM"/>
            <owl:onProperty>
              <owl:ObjectProperty rdf:about="#machine_model"/>
            </owl:onProperty>
          </owl:Restriction>
          <owl:Restriction>
            <owl:onProperty>
              <owl:ObjectProperty rdf:about="#machine_model"/>
            </owl:onProperty>
            <owl:someValuesFrom rdf:resource="#DTM"/>
          </owl:Restriction>
          <owl:Restriction>
            <owl:allValuesFrom>
              <owl:Class rdf:about="#Polynomial"/>
            </owl:allValuesFrom>
            <owl:onProperty>
              <owl:ObjectProperty rdf:about="#time_bound"/>
            </owl:onProperty>
          </owl:Restriction>
          <owl:Restriction>
            <owl:onProperty>
              <owl:ObjectProperty rdf:about="#time_bound"/>
            </owl:onProperty>
            <owl:someValuesFrom>
              <owl:Class rdf:about="#Polynomial"/>
            </owl:someValuesFrom>
          </owl:Restriction>
        </owl:intersectionOf>
      </owl:Class>
    </rdfs:subClassOf>
  </owl:Class>
  <owl:Class rdf:ID="Representation_of_Structures">
    <rdfs:subClassOf>
      <owl:Class rdf:about="#Symbolic"/>
    </rdfs:subClassOf>
  </owl:Class>
  <owl:Class rdf:ID="NP-hard">
    <rdfs:subClassOf>
      <owl:Class rdf:about="#Time"/>
    </rdfs:subClassOf>
  </owl:Class>
  <owl:Class rdf:ID="symmetricTM">
    <rdfs:comment>Symmetric TM</rdfs:comment>
    <rdfs:subClassOf>
      <owl:Class rdf:about="#ComputationModel"/>
    </rdfs:subClassOf>
  </owl:Class>
  <owl:Class rdf:ID="ArthurMerlinGame">
    <rdfs:subClassOf>
      <owl:Class rdf:about="#ComputationModel"/>
    </rdfs:subClassOf>
  </owl:Class>
  <owl:Class rdf:ID="Factorial">
    <rdfs:subClassOf>
      <owl:Class rdf:about="#ResourceBound"/>
    </rdfs:subClassOf>
    <rdfs:comment>The resource is bound by O(n!), where n is the size of the input.</rdfs:comment>
  </owl:Class>
  <owl:Class rdf:ID="Calculus">
    <rdfs:subClassOf>
      <owl:Class rdf:about="#Symbolic"/>
    </rdfs:subClassOf>
  </owl:Class>
  <owl:Class rdf:ID="Gill-Miller">
    <rdfs:comment>The Gill-Miller finite difference method.</rdfs:comment>
    <rdfs:subClassOf>
      <owl:Class rdf:about="#Fixed_Abscissae_Methods"/>
    </rdfs:subClassOf>
  </owl:Class>
  <owl:Class rdf:ID="Space">
    <rdfs:subClassOf rdf:resource="#ComplexityClasses"/>
  </owl:Class>
  <owl:Class rdf:ID="co-NP">
    <rdfs:subClassOf>
      <owl:Class rdf:about="#Time"/>
    </rdfs:subClassOf>
    <rdfs:comment>Class of decision problems that are complements of NP problems.</rdfs:comment>
  </owl:Class>
  <owl:Class rdf:ID="ResourceBound">
    <rdfs:comment>Commonly used bounds on space and time resources.</rdfs:comment>
    <rdfs:subClassOf rdf:resource="#Complexity"/>
  </owl:Class>
  <owl:Class rdf:ID="Berlekamp-Hensel">
    <rdfs:subClassOf rdf:resource="#Factorization"/>
  </owl:Class>
  <owl:Class rdf:ID="Gosper_Algorithm">
    <rdfs:subClassOf>
      <owl:Class rdf:about="#Summation"/>
    </rdfs:subClassOf>
  </owl:Class>
  <owl:Class rdf:ID="Gauss-Laguerre">
    <rdfs:subClassOf>
      <owl:Class rdf:about="#Fixed_Abscissae_Methods"/>
    </rdfs:subClassOf>
  </owl:Class>
  <owl:Class rdf:ID="Integer_GCD">
    <rdfs:subClassOf>
      <owl:Class rdf:about="#GCD"/>
    </rdfs:subClassOf>
  </owl:Class>
  <owl:Class rdf:ID="Linear_Algebra">
    <rdfs:subClassOf>
      <owl:Class rdf:about="#Symbolic"/>
    </rdfs:subClassOf>
  </owl:Class>
  <owl:Class rdf:ID="Constrained_Optimisation">
    <rdfs:subClassOf>
      <owl:Class rdf:about="#Optimisation"/>
    </rdfs:subClassOf>
  </owl:Class>
  <owl:Class rdf:ID="RAM">
    <rdfs:comment>Random Access Machine</rdfs:comment>
    <rdfs:subClassOf>
      <owl:Class rdf:about="#ComputationModel"/>
    </rdfs:subClassOf>
  </owl:Class>
  <owl:Class rdf:ID="PRAM">
    <rdfs:subClassOf>
      <owl:Class rdf:about="#ComputationModel"/>
    </rdfs:subClassOf>
    <rdfs:comment>Parallel Random Access Machine</rdfs:comment>
  </owl:Class>
  <owl:Class rdf:ID="Automatic_Adaptive_Methods">
    <rdfs:comment>Quadrature rules using non-uniformly spaced abscissae.</rdfs:comment>
    <rdfs:subClassOf>
      <owl:Class rdf:about="#Quadrature"/>
    </rdfs:subClassOf>
  </owl:Class>
  <owl:Class rdf:ID="Algebraic_Structures">
    <rdfs:subClassOf>
      <owl:Class rdf:about="#Symbolic"/>
    </rdfs:subClassOf>
  </owl:Class>
  <owl:Class rdf:ID="PTM">
    <rdfs:subClassOf>
      <owl:Class rdf:about="#ComputationModel"/>
    </rdfs:subClassOf>
    <rdfs:comment>Probabilistic TM</rdfs:comment>
  </owl:Class>
  <owl:Class rdf:ID="Polynomial_System_Solving">
    <rdfs:subClassOf>
      <owl:Class rdf:about="#Symbolic"/>
    </rdfs:subClassOf>
  </owl:Class>
  <owl:Class rdf:ID="Time">
    <rdfs:subClassOf rdf:resource="#ComplexityClasses"/>
  </owl:Class>
  <owl:Class rdf:ID="Patterson">
    <rdfs:subClassOf>
      <owl:Class rdf:about="#Automatic_Non-Adaptive_Methods"/>
    </rdfs:subClassOf>
    <rdfs:comment>High-order extensions to Kronrod Rule.</rdfs:comment>
  </owl:Class>
  <owl:Class rdf:ID="Differentiation">
    <rdfs:subClassOf rdf:resource="#Calculus"/>
  </owl:Class>
  <owl:Class rdf:ID="AdviceTakingTM">
    <rdfs:subClassOf>
      <owl:Class rdf:about="#ComputationModel"/>
    </rdfs:subClassOf>
  </owl:Class>
  <owl:Class rdf:ID="Buchberger">
    <rdfs:subClassOf>
      <owl:Class rdf:about="#GroebnerBasis"/>
    </rdfs:subClassOf>
  </owl:Class>
  <owl:Class rdf:ID="CTM">
    <rdfs:subClassOf>
      <owl:Class rdf:about="#ComputationModel"/>
    </rdfs:subClassOf>
    <rdfs:comment>Counting TM</rdfs:comment>
  </owl:Class>
  <owl:Class rdf:ID="OTM">
    <rdfs:comment>Oracle TM</rdfs:comment>
    <rdfs:subClassOf>
      <owl:Class rdf:about="#ComputationModel"/>
    </rdfs:subClassOf>
  </owl:Class>
  <owl:Class rdf:ID="Unconstrained_Optimisation">
    <rdfs:subClassOf>
      <owl:Class rdf:about="#Optimisation"/>
    </rdfs:subClassOf>
  </owl:Class>
  <owl:Class rdf:ID="UTM">
    <rdfs:subClassOf>
      <owl:Class rdf:about="#ComputationModel"/>
    </rdfs:subClassOf>
    <rdfs:comment>Unambiguous TM</rdfs:comment>
  </owl:Class>
  <owl:Class rdf:ID="Quadratic_Programming">
    <rdfs:subClassOf rdf:resource="#Constrained_Optimisation"/>
  </owl:Class>
  <owl:Class rdf:ID="Numeric">
    <rdfs:subClassOf>
      <owl:Class rdf:ID="Algorithm"/>
    </rdfs:subClassOf>
  </owl:Class>
  <owl:Class rdf:ID="Arithmetic">
    <rdfs:subClassOf>
      <owl:Class rdf:about="#Symbolic"/>
    </rdfs:subClassOf>
  </owl:Class>
  <owl:Class rdf:ID="Symbolic_Numeric">
    <rdfs:subClassOf rdf:resource="#Algorithm"/>
  </owl:Class>
  <owl:Class rdf:ID="Cantor-Zassenhauss">
    <rdfs:subClassOf rdf:resource="#Factorization"/>
  </owl:Class>
  <owl:Class rdf:ID="Quantifier_Elimination">
    <rdfs:subClassOf>
      <owl:Class rdf:about="#Symbolic"/>
    </rdfs:subClassOf>
  </owl:Class>
  <owl:Class rdf:ID="Optimisation">
    <rdfs:subClassOf rdf:resource="#Numeric"/>
  </owl:Class>
  <owl:Class rdf:ID="ComputationModel">
    <rdfs:comment>Models of Computations Used in Theoretical Complexity Theory</rdfs:comment>
    <rdfs:subClassOf rdf:resource="#Complexity"/>
  </owl:Class>
  <owl:Class rdf:ID="Linear">
    <rdfs:comment>The resource is bound by O(n), where n is the size of the input.</rdfs:comment>
    <rdfs:subClassOf>
      <owl:Class rdf:about="#Polynomial"/>
    </rdfs:subClassOf>
  </owl:Class>
  <owl:Class rdf:ID="Formulae_Based">
    <rdfs:subClassOf rdf:resource="#Polynomial_Roots"/>
  </owl:Class>
  <owl:Class rdf:ID="OracleAugmentedBCF">
    <rdfs:subClassOf rdf:resource="#ComputationModel"/>
  </owl:Class>
  <owl:Class rdf:ID="NP-complete">
    <rdfs:subClassOf rdf:resource="#Time"/>
  </owl:Class>
  <owl:Class rdf:ID="NDTM">
    <rdfs:comment>Nondeterministic TM</rdfs:comment>
    <rdfs:subClassOf rdf:resource="#ComputationModel"/>
  </owl:Class>
  <owl:Class rdf:ID="de_Doncker">
    <rdfs:subClassOf rdf:resource="#Automatic_Adaptive_Methods"/>
  </owl:Class>
  <owl:Class rdf:ID="Integration">
    <rdfs:subClassOf rdf:resource="#Calculus"/>
  </owl:Class>
  <owl:Class rdf:ID="Automatic_Non-Adaptive_Methods">
    <rdfs:subClassOf>
      <owl:Class rdf:about="#Quadrature"/>
    </rdfs:subClassOf>
    <rdfs:comment>Quadrature rules using uniformly spaced abscissae.</rdfs:comment>
  </owl:Class>
  <owl:Class rdf:ID="Symbolic">
    <rdfs:subClassOf rdf:resource="#Algorithm"/>
  </owl:Class>
  <owl:Class rdf:ID="Logarithmic">
    <rdfs:comment>The resource is bound by O(log n), where n is the size of the input.</rdfs:comment>
    <rdfs:subClassOf rdf:resource="#ResourceBound"/>
  </owl:Class>
  <owl:Class rdf:ID="InteractiveProof">
    <rdfs:subClassOf rdf:resource="#ComputationModel"/>
  </owl:Class>
  <owl:Class rdf:ID="NP">
    <rdfs:subClassOf>
      <owl:Class>
        <owl:intersectionOf rdf:parseType="Collection">
          <owl:Restriction>
            <owl:someValuesFrom rdf:resource="#NDTM"/>
            <owl:onProperty>
              <owl:ObjectProperty rdf:about="#machine_model"/>
            </owl:onProperty>
          </owl:Restriction>
          <owl:Restriction>
            <owl:allValuesFrom rdf:resource="#NDTM"/>
            <owl:onProperty>
              <owl:ObjectProperty rdf:about="#machine_model"/>
            </owl:onProperty>
          </owl:Restriction>
          <owl:Restriction>
            <owl:onProperty>
              <owl:ObjectProperty rdf:about="#time_bound"/>
            </owl:onProperty>
            <owl:allValuesFrom>
              <owl:Class rdf:about="#Polynomial"/>
            </owl:allValuesFrom>
          </owl:Restriction>
          <owl:Restriction>
            <owl:onProperty>
              <owl:ObjectProperty rdf:about="#time_bound"/>
            </owl:onProperty>
            <owl:someValuesFrom>
              <owl:Class rdf:about="#Polynomial"/>
            </owl:someValuesFrom>
          </owl:Restriction>
        </owl:intersectionOf>
      </owl:Class>
    </rdfs:subClassOf>
    <rdfs:comment>Languages recognizable by NDTMs in polynomial time.</rdfs:comment>
    <rdfs:subClassOf rdf:resource="#Time"/>
  </owl:Class>
  <owl:Class rdf:ID="Fixed_Abscissae_Methods">
    <rdfs:comment>Quadrature rules using fixed number of abscissae.</rdfs:comment>
    <rdfs:subClassOf>
      <owl:Class rdf:about="#Quadrature"/>
    </rdfs:subClassOf>
  </owl:Class>
  <owl:Class rdf:ID="Quadrature">
    <rdfs:subClassOf rdf:resource="#Numeric"/>
  </owl:Class>
  <owl:Class rdf:ID="Kroenecker">
    <rdfs:subClassOf rdf:resource="#Factorization"/>
  </owl:Class>
  <owl:Class rdf:ID="PDE">
    <rdfs:subClassOf rdf:resource="#Symbolic"/>
  </owl:Class>
  <owl:Class rdf:ID="Quasi-Newton">
    <rdfs:subClassOf rdf:resource="#Unconstrained_Optimisation"/>
  </owl:Class>
  <owl:Class rdf:ID="Karatsuba">
    <rdfs:subClassOf rdf:resource="#Multiplication"/>
  </owl:Class>
  <owl:Class rdf:ID="Safeguarded_Quadratic-Interpolation">
    <rdfs:subClassOf rdf:resource="#Unconstrained_Optimisation"/>
  </owl:Class>
  <owl:Class rdf:ID="Polynomial">
    <rdfs:comment>There is a constant k such that the resource is bound by O(n**k), where n is the size of the input.</rdfs:comment>
    <rdfs:subClassOf rdf:resource="#ResourceBound"/>
  </owl:Class>
  <owl:Class rdf:ID="ATM">
    <rdfs:comment>Alternating Turing Machine</rdfs:comment>
    <rdfs:subClassOf rdf:resource="#ComputationModel"/>
  </owl:Class>
  <owl:Class rdf:ID="Simplification">
    <rdfs:subClassOf rdf:resource="#Symbolic"/>
  </owl:Class>
  <owl:Class rdf:ID="ParityTM">
    <rdfs:comment>Parity TM</rdfs:comment>
    <rdfs:subClassOf rdf:resource="#ComputationModel"/>
  </owl:Class>
  <owl:Class rdf:ID="Unbounded">
    <rdfs:comment>No constant is imposed on the resource</rdfs:comment>
    <rdfs:subClassOf rdf:resource="#ResourceBound"/>
  </owl:Class>
  <owl:Class rdf:ID="Gauss-Rational">
    <rdfs:subClassOf rdf:resource="#Fixed_Abscissae_Methods"/>
  </owl:Class>
  <owl:Class rdf:ID="LexTriangular">
    <rdfs:subClassOf>
      <owl:Class rdf:about="#GroebnerBasis"/>
    </rdfs:subClassOf>
  </owl:Class>
  <owl:Class rdf:ID="Laguerres_Method">
    <rdfs:subClassOf rdf:resource="#Polynomial_Roots"/>
  </owl:Class>
  <owl:Class rdf:ID="GCD">
    <rdfs:subClassOf rdf:resource="#Symbolic"/>
  </owl:Class>
  <owl:Class rdf:ID="Summation">
    <rdfs:subClassOf rdf:resource="#Symbolic"/>
  </owl:Class>
  <owl:Class rdf:ID="RTM">
    <rdfs:comment>Random TM</rdfs:comment>
    <rdfs:subClassOf rdf:resource="#ComputationModel"/>
  </owl:Class>
  <owl:Class rdf:ID="Conjugate-Gradient">
    <rdfs:subClassOf rdf:resource="#Unconstrained_Optimisation"/>
  </owl:Class>
  <owl:Class rdf:ID="GroebnerBasis">
    <rdfs:subClassOf rdf:resource="#Polynomial_System_Solving"/>
  </owl:Class>
  <owl:Class rdf:ID="Root_Finding">
    <rdfs:subClassOf rdf:resource="#Numeric"/>
  </owl:Class>
  <owl:Class rdf:ID="Powell">
    <rdfs:subClassOf rdf:resource="#Root_Finding"/>
    <rdfs:subClassOf>
      <owl:Class>
        <owl:intersectionOf rdf:parseType="Collection">
          <owl:Restriction>
            <owl:someValuesFrom>
              <owl:Class>
                <rdfs:subClassOf rdf:resource="http://monet.nag.co.uk/bibliography#ZentralBlatt_MATH"/>
                <rdfs:subClassOf>
                  <owl:Restriction>
                    <owl:onProperty>
                      <owl:DatatypeProperty rdf:about="http://monet.nag.co.uk/bibliography#bibref"/>
                    </owl:onProperty>
                    <owl:hasValue rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
                    >Zbl_0277.65028</owl:hasValue>
                  </owl:Restriction>
                </rdfs:subClassOf>
              </owl:Class>
            </owl:someValuesFrom>
            <owl:onProperty>
              <owl:ObjectProperty rdf:about="#bibliographic_reference"/>
            </owl:onProperty>
          </owl:Restriction>
        </owl:intersectionOf>
      </owl:Class>
    </rdfs:subClassOf>
  </owl:Class>
  <owl:Class rdf:ID="Gauss-Hermite">
    <rdfs:subClassOf rdf:resource="#Fixed_Abscissae_Methods"/>
  </owl:Class>
  <owl:Class rdf:ID="Constant">
    <rdfs:comment>There exists a constant k such that the resource is bound by k for all sizes n of the input.</rdfs:comment>
    <rdfs:subClassOf rdf:resource="#ResourceBound"/>
  </owl:Class>
  <owl:Class rdf:ID="Bus_and_Dekker">
    <rdfs:subClassOf rdf:resource="#Root_Finding"/>
    <rdfs:subClassOf>
      <owl:Class>
        <owl:intersectionOf rdf:parseType="Collection">
          <owl:Restriction>
            <owl:someValuesFrom>
              <owl:Class>
                <rdfs:subClassOf rdf:resource="http://monet.nag.co.uk/bibliography#ZentralBlatt_MATH"/>
                <rdfs:subClassOf>
                  <owl:Restriction>
                    <owl:onProperty>
                      <owl:DatatypeProperty rdf:about="http://monet.nag.co.uk/bibliography#bibref"/>
                    </owl:onProperty>
                    <owl:hasValue rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
                    >Zbl_0315.65031</owl:hasValue>
                  </owl:Restriction>
                </rdfs:subClassOf>
              </owl:Class>
            </owl:someValuesFrom>
            <owl:onProperty>
              <owl:ObjectProperty rdf:about="#bibliographic_reference"/>
            </owl:onProperty>
          </owl:Restriction>
        </owl:intersectionOf>
      </owl:Class>
    </rdfs:subClassOf>
  </owl:Class>
  <owl:Class rdf:ID="BCF">
    <rdfs:comment>Boolean Circuit Family</rdfs:comment>
    <rdfs:subClassOf rdf:resource="#ComputationModel"/>
  </owl:Class>
  <owl:Class rdf:ID="Exponential">
    <rdfs:subClassOf rdf:resource="#ResourceBound"/>
    <rdfs:comment>There is a constant k such that the resource is bound by O(2**n**k), where n is the size of the input.</rdfs:comment>
  </owl:Class>
  <owl:Class rdf:ID="Linearithmic">
    <rdfs:subClassOf rdf:resource="#ResourceBound"/>
    <rdfs:comment>The resource is bound by O(n*log n), where n is the size of the input.</rdfs:comment>
  </owl:Class>
  <owl:Class rdf:ID="Berlekamp">
    <rdfs:subClassOf rdf:resource="#Factorization"/>
  </owl:Class>
  <owl:Class rdf:ID="Euclidean_Algorithm">
    <rdfs:subClassOf rdf:resource="#Integer_GCD"/>
  </owl:Class>
  <owl:ObjectProperty rdf:ID="time_bound">
    <rdfs:range rdf:resource="#ResourceBound"/>
    <rdfs:domain rdf:resource="#Time"/>
  </owl:ObjectProperty>
  <owl:ObjectProperty rdf:ID="space_bound">
    <rdfs:range rdf:resource="#ResourceBound"/>
    <rdfs:domain rdf:resource="#Space"/>
  </owl:ObjectProperty>
  <owl:ObjectProperty rdf:ID="machine_model">
    <rdfs:range rdf:resource="#ComputationModel"/>
    <rdfs:domain>
      <owl:Class>
        <owl:unionOf rdf:parseType="Collection">
          <owl:Class rdf:about="#Space"/>
          <owl:Class rdf:about="#Time"/>
        </owl:unionOf>
      </owl:Class>
    </rdfs:domain>
  </owl:ObjectProperty>
  <owl:ObjectProperty rdf:ID="bibliographic_reference">
    <rdfs:domain rdf:resource="#Algorithm"/>
    <rdfs:range  rdf:resource="http://monet.nag.co.uk/bibliography#Bibliography_Reference"/>
  </owl:ObjectProperty>
  <owl:ObjectProperty rdf:ID="resource_bound">
    <rdfs:domain>
      <owl:Class>
        <owl:unionOf rdf:parseType="Collection">
          <owl:Class rdf:about="#Space"/>
          <owl:Class rdf:about="#Time"/>
        </owl:unionOf>
      </owl:Class>
    </rdfs:domain>
    <rdfs:range rdf:resource="#ResourceBound"/>
  </owl:ObjectProperty>
  <owl:ObjectProperty rdf:ID="space_complexity">
    <rdfs:domain rdf:resource="#Algorithm"/>
    <rdfs:range rdf:resource="#Space"/>
    <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#FunctionalProperty"/>
  </owl:ObjectProperty>
  <owl:FunctionalProperty rdf:ID="time_complexity">
    <rdfs:domain rdf:resource="#Algorithm"/>
    <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#ObjectProperty"/>
    <rdfs:range rdf:resource="#Time"/>
  </owl:FunctionalProperty>
</rdf:RDF>

<!-- Created with Protege (with OWL Plugin 1.0, Build 85)  http://protege.stanford.edu -->
