Skip to main content

Structure Formation in Large Theories

  • Conference paper
  • First Online:

Part of the book series: Lecture Notes in Computer Science ((LNAI,volume 9150))

Abstract

Structuring theories is one of the main approaches to reduce the combinatorial explosion associated with reasoning and exploring large theories. In the past we developed the notion of development graphs as a means to represent and maintain structured theories. In this paper we present a methodology and a resulting implementation to reveal the hidden structure of flat theories by transforming them into detailed development graphs. We review our approach using plain TSTP-representations of MIZAR articles obtaining more structured and also more concise theories.

This is a preview of subscription content, log in via an institution.

Buying options

Chapter
USD   29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD   39.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD   54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Learn about institutional subscriptions

Notes

  1. 1.

    Where \({\langle S\rangle _{\varSigma }}\) denotes the smallest valid sub-signature of \(\varSigma \) containing S.

  2. 2.

    http://www.scala-lang.org/.

References

  1. Autexier, S., Hutter, D.: Mind the gap - maintaining formal developments in MAYA. In: Siekmann, J.H. (ed.) LNCS 2605. Springer, Heidelberg (2005)

    Google Scholar 

  2. Frisch, A.M., David Page Jr., C.: Generalization with taxonomic information. In: 8th National Conference on Artificial Intelligence, pp. 775–761. AAAI-Press (1990)

    Google Scholar 

  3. Gauthier, T., Kaliszyk, C.: Matching concepts across HOL libraries. In: Watt, S.M., Davenport, J.H., Sexton, A.P., Sojka, P., Urban, J. (eds.) CICM 2014. LNCS, vol. 8543, pp. 267–281. Springer, Heidelberg (2014)

    Chapter  Google Scholar 

  4. Goguen, J.A., Burstall, R.M.: Institutions: abstract model theory for specification and programming. J. Assoc. Comput. Mach. 39(221–256), 95–146 (1992). Predecessor in: LNCS 164(221–256) (1984)

    Article  MathSciNet  MATH  Google Scholar 

  5. Hutter, D.: Management of change in verification systems. In: Proceedings 15th IEEE International Conference on Automated Software Engineering, ASE-2000, pp. 23–34. IEEE Computer Society (2000)

    Google Scholar 

  6. Mossakowski, T., Autexier, S., Hutter, D.: Development graphs - proof management for structured specifications. J. Logic Algebr. Program. Special Issue Algebr. Specif. Dev. Tech. 67(1–2), 114–145 (2006)

    Article  MathSciNet  MATH  Google Scholar 

  7. Normann, I., Kohlhase, M.: Extended formula normalization for \(\epsilon \)-retrieval and sharing of mathematical knowledge. In: Kauers, M., Kerber, M., Miner, R., Windsteiger, W. (eds.) MKM/CALCULEMUS 2007. LNCS (LNAI), vol. 4573, pp. 356–370. Springer, Heidelberg (2007)

    Chapter  Google Scholar 

  8. Riazanov, A., Tchaltsev, A.: Reusable TPTP parser in java (2007). http://www.freewebs.com/andrei_ch/TPTP_2007.01.30.tgz

  9. Sutcliffe, G.: The TPTP world – infrastructure for automated reasoning. In: Clarke, E.M., Voronkov, A. (eds.) LPAR-16 2010. LNCS, vol. 6355, pp. 1–12. Springer, Heidelberg (2010)

    Chapter  Google Scholar 

  10. Trybulec, A.: On the sets inhabited by numbers. J. Formaliz. Math. 15 (2003). http://mizar.uwb.edu.pl/JFM/Vol15/membered.html

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Dieter Hutter .

Editor information

Editors and Affiliations

Proof of Theorem 1 (Structure Preservation)

Proof of Theorem 1 (Structure Preservation)

1.1 Horizontal Split

It holds trivially that \( Dom _{{\mathcal {D}}} = Dom _{{\mathcal {D}}'}\).

  • \( loc '\) is surjective because by construction each \(N_i\), \(i=1,\ldots ,k\) has a local entity. Furthermore, for each \(N_i\) and each \(e\in dom ^{N_i}\) holds \( loc '(e) = N_i\) by construction. Furthermore, since \( loc ^{-1}(N) = dom ^N\), none of the incoming links into N provided any entity, and consequently none of the incoming links into \(N_1, \ldots , N_k\) do. Hence, \( loc '^{-1}(N_i) = dom ^{N_i}\), \(i=1,2\) and since \( dom ^N := dom ^{N_1}\uplus \ldots \uplus dom ^{N_k}\), \( loc '(e)\) is unique for \(e\in dom ^N\).

  • If N is not a top-level node in \({\mathcal {D}}\), then \( Dom _{\lceil {\mathcal {D}}'\rceil } = Dom _{\lceil {\mathcal {D}}\rceil } = \varSigma \uplus \textit{Ax}_\mathcal{}\uplus \textit{Lem}\) because the domains of nodes reachable from N are not affected by the horizontal split. If N is a top-level node, then all \(N_i\) with \(1 \le i \le k\) are top-level nodes. Since \(dom^N = dom ^{N_1}\uplus \ldots \uplus dom ^{N_k}\) and \( Imports _{{\mathcal {D}}}(N) = Imports _{{\mathcal {D}}'}(N_1) = \ldots = Imports _{{\mathcal {D}}'}(N_k)\), it holds

    $$\begin{aligned} Dom _{{\mathcal {D}}}(N)= & {} dom ^N\cup Imports _{{\mathcal {D}}}(N) = dom ^{N_1}\cup \ldots dom ^{N_k} \cup Imports _{{\mathcal {D}}}(N)\\= & {} dom ^{N_1}\cup \ldots dom ^{N_k} \cup Imports _{{\mathcal {D}}'}(N_1) \cup \ldots \cup Imports _{{\mathcal {D}}'}(N_k) \\= & {} dom ^{N_1}\cup Imports _{{\mathcal {D}}'}(N_1) \cup \ldots \cup dom ^{N_k}\cup Imports _{{\mathcal {D}}'}(N_k) \\= & {} Dom _{{\mathcal {D}}'}(N_1) \cup \ldots \cup Dom _{{\mathcal {D}}'}(N_k) \end{aligned}$$

    Thus, \( Dom _{\lceil {\mathcal {D}}'\rceil } = Dom _{\lceil {\mathcal {D}}\rceil } = \varSigma \uplus \textit{Ax}_\mathcal{}\uplus \textit{Lem}\).

  • Assume \(\phi \in \textit{Lem}_\mathcal{{\mathcal {D}}}\) and \(\psi \in \textit{Supp}(\phi )\). If \( loc _{{\mathcal {D}}}(\psi ) \ne N\) and \( loc _{{\mathcal {D}}}(\phi ) \ne N\), then both \( loc _{{\mathcal {D}}}(\psi ), loc _{{\mathcal {D}}}(\phi )\) are in \({\mathcal {D}}'\) and we consider . If \(N\in p\) then and by construction the path are in \({\mathcal {D}}'\) for \(1 \le i \le k\). Since \( loc _{{\mathcal {D}}}(\psi ) \ne N\), each \({\tau }_{| Dom _{N_i}}\) behaves equivalently on the image of \(\psi \) imported in \(N_i\) and hence for some \({\sigma }'\) such that \({\sigma }'(\psi ) = {\sigma }(\psi )\). If \(N\not \in p\), then p is also a path in \({\mathcal {D}}'\) and holds trivially.

    If \( loc _{{\mathcal {D}}}(\phi )=N\) then since all \(N_i\) are mutually lemma independent, without loss of generality we can assume \(\phi \in \textit{ax}^{N_1}\cup \textit{lem}^{N_1}\) and this \( loc '_{{\mathcal {D}}'}(\phi ) = N_1\). If \( loc _{{\mathcal {D}}}(\psi ) = N\), then \(\psi '\in \textit{ax}^{N_1}\cup \textit{lem}^{N_1}\) because \(N_1\) is lemma independent. Thus, \( loc '_{{\mathcal {D}}'}(\psi ) = N_1\) and holds trivially. Otherwise, \( loc _{{\mathcal {D}}}(\psi ) = loc '_{{\mathcal {D}}'}(\psi )\) and since N was reachable from \( loc _{{\mathcal {D}}}(\psi )\) by construction \(N_1\) is also reachable from \( loc '_{{\mathcal {D}}'}(\psi )\).

1.2 Vertical Split

  • First, we have to prove that \( loc '\) is a location mapping. \( loc '\) is surjective because by construction each node \(N_i\) (with \(i = 1,2\)) has some local entity \(e \in dom ^{N_i}\). Thus \( loc '(e) = N_i\) and \(N_i\) is in the range of \( loc '\). Furthermore, \(\forall e\in dom ^{N_i}.\; loc '(e) = N_i\) holds by definition. Finally, let \(e \in Dom _{{\mathcal {D}}'} = Dom _{{\mathcal {D}}}\): \( loc '(e) = N_i\) implies \( loc (e) = N\) and therefore there is no node in \(\mathcal {N}\setminus \{N\}\) which provides e. Furthermore, since , \(N_1\) and \(N_2\) cannot provide the same entity e.

  • By definition \(\forall e \in dom ^{N_i}\) implies \( loc '(e) = N_i\) for \(i = 1,2\) in \({\mathcal {D}}'\). For all other nodes in \({\mathcal {D}}' \setminus \{N_1, N_2\}\) the property is inherited by \(({\mathcal {D}}, loc , \textit{Supp})\) being a structuring and \( loc (e) = loc '(e)\) if \( loc (e) \not = N\).

  • Since \( Dom _{{\mathcal {D}}}(N) = Dom _{{\mathcal {D}}'}({N_2})\) and iff \( Dom _{\lceil {\mathcal {D}}\rceil } = Dom _{\lceil {\mathcal {D}}'\rceil }\).

  • Suppose \(\phi \in \textit{Lem}_\mathcal{{\mathcal {D}}}, \psi \in \textit{Supp}(\phi )\) with \( loc (\phi ) = M\) and \( loc (\psi ) = M'\). If \(N \not \in \{M, M'\}\) then \( loc '(\phi ) = M\), \( loc '(\psi ) = M'\) and in \({\mathcal {D}}'\) trivially. If \(M = N\) and \(M' \not = N\) then \( loc '(\phi ) \in \{N_1, N_2\}\), and again in \({\mathcal {D}}'\). The case of \(M \not = N\) and \(M' = N\) is proven analogously. We are left with the case of \(M = M' = N\).

    Since \(N_1\) is independent of \(N_2\) , it holds that for all \(\phi ' \in \textit{ax}^{N_1} \cup \textit{lem}^{N_1}. \; \textit{Supp}(\phi ) \cap (\textit{ax}^{N_2} \cup \textit{lem}^{N_2}) = \emptyset \).

    Thus \(\phi \in \textit{ax}^{N_1} \cup \textit{lem}^{N_1}\) implies that \(\psi \in \textit{ax}^{N_1} \cup \textit{lem}^{N_1}\) as well and holds trivially.    \(\square \)

1.3 Factorization

  • We have to prove that \( loc '\) is a location mapping. First, we prove that \( loc '\) is surjective. For any node \(K \in \mathcal {N}' \setminus \{N, N_1, \ldots N_p\}\) \( loc ^{-1}(K) = loc ^{-1}(K)\) holds. Since \(\textit{sig}^N \cup \textit{ax}^N \not = \emptyset \) but \((\textit{sig}^N \cup \textit{ax}^N) \cap Dom _{{\mathcal {D}}} = \emptyset \) it holds that \(\textit{sig}^N \cup \textit{ax}^N \subseteq loc '^{-1}(N)\). Furthermore, \(\textit{sig}^{M_j} \cup \textit{ax}^{M_j} \subseteq loc '^{-1}(N_j)\) since \(\textit{sig}^{M_j} \cup \textit{ax}^{M_j} \subseteq {\theta }_j(\textit{sig}^N \cup \textit{ax}^N)\) and \({\theta }_j(\textit{sig}^N \cup \textit{ax}^N) \cap (\textit{sig}^N \cup \textit{ax}^N) = \emptyset \).

    Second we have to prove \(\forall K\in \mathcal {N}'. \; \forall e \in dom ^K. \; loc '(e) = K\) holds. If \(K \not \in \{N, N_1, \ldots N_p\}\) then \( loc '(e) = loc (e) = K\). If \(K = N\) then \( dom ^N \in Dom _{{\mathcal {D}}'}(N)\) and \( dom ^N \not \in Dom _{{\mathcal {D}}}(K_i)\) for \(i = 1,\ldots , n\) because \( dom ^N \cap Dom _{{\mathcal {D}}} = \emptyset \). Thus \(\forall e \in dom ^N. \; loc '{{\mathcal {D}}'}(e) = N\). Finally, if \(K = N_j\) then \( dom ^{N_j} = \textit{lem}^{M_j} \setminus \theta _j(\textit{lem})\) In particular, \( dom ^{N_j} \cap Dom _{{\mathcal {D}}'}(N) = \emptyset \) implying that \( loc '{{\mathcal {D}}'}(e) = N_j\) for all \(e \in dom ^{N_j}\).

    Third, we prove that all \(e \in Dom _{DG'}\) are provided by a unique node. The only interesting case is that e is provided by N or some \(N_j\). In case of N both \( dom ^N\) and also entries provided by some link from \(K_i\) are by definition not in \( Dom _{{\mathcal {D}}}\) and thus not provided by any node already in \({\mathcal {D}}\) but by definition also not provided by \(N_j\). It remains the case that an entry e is provided by two nodes \(N_i\) and \(N_j\). Since all \(e \in Dom _{DG}\) were provided by a unique node, this implies that e has to be a mapped lemma of N but that violates the precondition that each \(\theta _i\) has to map e into a different entity.

  • Next we prove that \({\mathcal {D}}\) and \({\mathcal {D}}'\) coincide in the entities they provide at their maximal nodes. Since N is not a maximal node, it is sufficient to prove that \(N_j\) and \(M_j\) coincide in their provided entities:

  • Suppose \(\phi \in \textit{Lem}_\mathcal{{\mathcal {D}}'}\) and \(\psi \in \textit{Supp}_{{\mathcal {D}}'}(\phi )\). If \( loc '(\phi ), loc '(\psi ) \not \in \{N, N_1,\ldots N_p\}\) then \( loc '(\phi ) = loc (\phi )\) and \( loc '(\psi ) = loc (\psi )\) and therefore, with \({\sigma }(\psi ) = \psi \) in \({\mathcal {D}}\). Since \({\mathcal {D}}'\) inherits all links away from \(M_1, \ldots M_p\) and paths travesing some \(K_i\) and \(M_j\) can be mapped to paths traversing \(K_i\), N, and \(N_j\). with \({\sigma }(\psi ) = \psi \) also in \({\mathcal {D}}'\)- Next, let \( loc '(\phi ) = N_j\): by definition we know that \(\phi \in M_j\) and \(\textit{Supp}(\phi ) \subseteq Dom _{{\mathcal {D}}}(M_j)\). Since \( Dom _{{\mathcal {D}}}(M_j) \subseteq Dom _{{\mathcal {D}}'}(N_j)\) we know that \(\textit{Supp}'(\phi ) = \textit{Supp}(\phi ) \subseteq Dom _{{\mathcal {D}}'}(N_j)\) and thus with \({\sigma }(\psi ) = \psi \). Finally, let \( loc '(\phi ) = N\). Then \(\textit{Supp}_N \subseteq \textit{Supp}'\) is a support mapping for \(\phi \) in particular.

1.4 Transitive Enrichment

Obviously, the inclusion of the global link does not affect the visibility (e.g. \( Dom _{}\)) of any node in \(\mathcal {N}\) nor the local entities provided by the individual nodes (i.e. \( dom \)). Hence, all properties of a structuring are trivially forwarded to the enriched structuring.

1.5 Removable Link

  • We have to prove that \( loc \) is also a location mapping for \({\mathcal {D}}'\). It holds that \(\forall N\in \mathcal {N}.\; loc _{{\mathcal {D}}}(N) = loc _{{\mathcal {D}}'}(N)\) since \( dom (N)\) remains unchanged and also all \(e \in loc _{{\mathcal {D}}}(N)\) that are exclusively provided by some link in \({\mathcal {D}}\) are still provided exclusively in \({\mathcal {D}}'\). Thus, \( loc \) is also surjective in \({\mathcal {D}}'\), also \(\forall N \in \mathcal {N}. \forall e\in dom ^{N}. \; loc {{\mathcal {D}}'}(e) = loc {{\mathcal {D}}}(e) = N\) and \(\forall e \in Dom _{{\mathcal {D}}'}. \; loc {{\mathcal {D}}'}(e)\) is the only node providing e.

  • \({\mathcal {D}}'\) and \({\mathcal {D}}'\) coincide in the entities they provide at their maximal nodes, which is an immediate consequence of condition (2) of Definition  9.

  • Also is implied by condition (3) of Definition  9.    \(\square \)

Rights and permissions

Reprints and permissions

Copyright information

© 2015 Springer International Publishing Switzerland

About this paper

Cite this paper

Autexier, S., Hutter, D. (2015). Structure Formation in Large Theories. In: Kerber, M., Carette, J., Kaliszyk, C., Rabe, F., Sorge, V. (eds) Intelligent Computer Mathematics. CICM 2015. Lecture Notes in Computer Science(), vol 9150. Springer, Cham. https://doi.org/10.1007/978-3-319-20615-8_10

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-20615-8_10

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-20614-1

  • Online ISBN: 978-3-319-20615-8

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics