Abstract
Deduction is usually considered to be the opposite of induc- tion. However, deduction and induction can be related in many ways. In this paper, two endeavors that try to relate discovery science and verifi- cation technology are described. The first is discovery by deduction, where attempts to find algorithms are made using verifiers. Case studies of finding algorithms for concurrent garbage collection and for mutual exclusion without semaphores are described. Superoptimization can also be classiffied as work in this field. Recent work on finding authentication protocols using a protocol veriffier is also briey surveyed. The second endeavor is discovery for deduction. This concerns the long-standing problem of finding induction formulae or loop invariants. The problem is regarded as one of learning from positive data, and the notion of safe generalization, which is commonly recognized in learning from positive data, is introduced into iterative computation of loop in- variants. The similarity between the widening operator in abstract inter- pretation and Gold’s notion of identification in the limit is also discussed.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
Dana Angluin. Finding patterns common to a set of strings. Proceedings of the 11th Annual Symposium on Theory of Computing, pp.130–141, 1979.
Dana Angluin. Inductive inference of formal languages from positive data. Information and Control, Vol.45, pp.117–135, 1980.
Hiroki Arimura, Takeshi Shinohara and Setsuko Otsuki. A polynomial time algorithm for finding finite unions of tree pattern languages. Proceedings of the 2nd International Workshop on Nonmonotonic and Inductive Logic, Lecture Notes in Artificial Intelligence, Vol.659, Springer-Verlag, pp.118–131, 1993.
Hiroki Arimura, Hiroki Ishizaka, Takeshi Shinohara. Learning Unions of Tree Patterns Using Queries. Theoretical Computer Science, Vol.185, pp.47–62, 1997.
Hiroki Arimura and Akihiro Yamamoto. Inductive Logic Programming: From Logic of Discovery to Machine Learning. IEICE Transactions on Information and Systems, Vol.E83-D, No.1, pp.10–18, 2000.
Edmund M. Clarke, Jr., Orna Grumberg, and Doron A. Peled. Model Checking, The MIT Press, 1999.
Patrick Cousot and Radhia Cousot. Abstract interpretation: a unified lattice model for static analysis of programs by construction or approximation of fixpoints. Conference Record of the 4th ACM Symposium on Principles of Programming Languages, pp.238–252, 1977.
Patrick Cousot and Nicolas Halbwachs. Automatic discovery of linear restraints among variables of a program. Conference Record of the 5th ACM Symposium on Principles of Programming Languages, pp.84–97, 1978.
Edsger W. Dijkstra, Leslie Lamport, A.J. Martin, C.S. Scholten, and E.F.M. Steffens. On-the-Fly Garbage Collection: An Exercise in Cooperation. Communications of the ACM, Vol.21, No.11, pp.966–975, 1978.
Nobuhisa Fujinami. Superoptimization of Scheduling Machine Instruction Pipelines (in Japanese). Computer Software, Vol.16, No.2, pp.80–84, Japan Society for Software Science and Technology, 1999.
E.Mark Gold. Language identification in the limit. Information and Control, Vol.10, pp.447–474, 1967.
Torbjörn Granlund and Richard Kenner. Eliminating Branches using a Superoptimizer and the GNU C Compiler. PLDI’92, Proceedings of the conference on Programming language design and implementation, pp.341–352, 1992.
Masami Hagiya. A proof description language and its reduction system, Publications of the Research Institute for Mathematical Sciences, Kyoto University, Vol.19, No.1, pp.237–261, 1983.
Nicolas Halbwachs. Détermination automatique de relations linéaires vérifiées par les variables d’un programme. Thése de 3éme cycle d’informatique, Université scientifique et médicale de Grenoble, Grenoble, France, 12 March 1979.
Nicolas Halbwachs, Yann-Erick Proy and Patrick Roumanoff. Verification of Real-Time Systems using Linear Relation Analysis. Formal Methods in System Design, Vol.11, No.2, pp.157–185, 1997.
Susumu Hayashi and Hiroshi Nakano. PX: A computational logic, The MIT Press, 1989.
Susumu Hayashi and Ryosuke Sumitomo. Testing Proofs by Examples. Advances in Computing Science, Asian’ 98, 4th Asian Computing Science Conference, Lecture notes in Computer Science, Vol.1538, pp.1–3, 1998.
Gerald J. Holzmann. The Model Checker SPIN. IEEE Transactions on Software Engineering, Vol.23, No.5, pp.279–295, 1997.
Steffen Lange and Thomas Zeugmann. Monotonic Versus Non-monotonic Language Learning. Proceedings of the 2nd International Workshop on Nonmonotonic and Inductive Logic, Lecture Notes in Artificial Intelligence, Vol.659, Springer-Verlag, pp.254–269, 1993.
Zohar Manna and Richard Waldinger. A deductive approach to program synthesis, ACM Transactions on Programming Languages and Systems, Vol.2, No.1, pp.90–121, 1980.
Henry Massalin. Superoptimizer: A Look at the Smallest Program. Proceedings of the Second International Conference on Architectural Support for Programming Languages and Operating Systems, ASPLOS II, pp.122–126, 1987.
Tatsuo Mizukami. Report for Exercise III in Information Science (in Japanese). Department of Information Science, University of Tokyo, 2000.
Adrian Perrig and Dawn Song. A First Step on Automatic Protocol Generation of Security Protocols. Proceedings of Network and Distributed System Security, 2000 Feb.
Masahiko Sato. Towards a mathematical theory of program synthesis, Proceedings of IJCAI 79, pp.757–762, 1979.
Dawn Xiaodong Song. Athena: a New Efficient Automatic Checker for Security Protocol Analysis, Proceedings of the 12th IEEE Computer Security Foundations Workshop, pp.192–202, 1999.
Koichi Takahashi and Masami Hagiya. Abstract Model Checking of Concurrent Garbage Collection by Regular Expressions (in Japanese). IPSJ Transactions on Programming, Information Processing Society of Japan, to appear, 2000.
Taiichi Yuasa. Real-Time Garbage Collection on General-Purpose Machines. Journal of Systems and Software, Vol.11, 1990.
Taiichi Yuasa. Algorithms for Realtime Garbage Collection (in Japanese). IPSJ Magazine, Information Processing Society of Japan, Vol.35, No.11, pp.1006–1013, 1994.
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2000 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Hagiya, M., Takahashi, K. (2000). Discovery and Deduction. In: Arikawa, S., Morishita, S. (eds) Discovery Science. DS 2000. Lecture Notes in Computer Science(), vol 1967. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-44418-1_3
Download citation
DOI: https://doi.org/10.1007/3-540-44418-1_3
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-41352-3
Online ISBN: 978-3-540-44418-3
eBook Packages: Springer Book Archive