Proving in the Isabelle Proof Assistant that the Set of Real Numbers is not Countable

Similar documents
A Note on Powers in Finite Fields

Accelerating interior point methods with GPUs for smart grid systems

Modelling Salmonella transfer during grinding of meat

Lidar calibration What s the problem?

Numerical modeling of the conduction and radiation heating in precision glass moulding

An Equivalent Source Method for Modelling the Lithospheric Magnetic Field Using Satellite and Airborne Magnetic Data

Code Generation for a Simple First-Order Prover

The dipole moment of a wall-charged void in a bulk dielectric

Matrix representation of a Neural Network

Optimizing Reliability using BECAS - an Open-Source Cross Section Analysis Tool

Crack Tip Flipping: A New Phenomenon yet to be Resolved in Ductile Plate Tearing

Optimal acid digestion for multi-element analysis of different waste matrices

Reducing Uncertainty of Near-shore wind resource Estimates (RUNE) using wind lidars and mesoscale models

Global Wind Atlas validation and uncertainty

Exposure Buildup Factors for Heavy Metal Oxide Glass: A Radiation Shield

Room Allocation Optimisation at the Technical University of Denmark

Sound absorption properties of a perforated plate and membrane ceiling element Nilsson, Anders C.; Rasmussen, Birgit

Radioactivity in the Risø District January-June 2014

Validation of Boundary Layer Winds from WRF Mesoscale Forecasts over Denmark

Strongly 2-connected orientations of graphs

Graphs with given diameter maximizing the spectral radius van Dam, Edwin

Diffusion of sulfuric acid in protective organic coatings

Application of mesoscale models with wind farm parametrisations in EERA-DTOC

Benchmarking of optimization methods for topology optimization problems

The Wien Bridge Oscillator Family

Radioactivity in the Risø District July-December 2013

The colpitts oscillator family

Kommerciel arbejde med WAsP

Steady State Comparisons HAWC2 v12.2 vs HAWCStab2 v2.12

Reflection of sound from finite-size plane and curved surfaces

Multiple Scenario Inversion of Reflection Seismic Prestack Data

Determination of packaging induced 3D stress utilizing a piezocoefficient mapping device

A Trust-region-based Sequential Quadratic Programming Algorithm

Realtime 3D stress measurement in curing epoxy packaging

Aalborg Universitet. Lecture 14 - Introduction to experimental work Kramer, Morten Mejlhede. Publication date: 2015

Comparisons of winds from satellite SAR, WRF and SCADA to characterize coastal gradients and wind farm wake effects at Anholt wind farm

Measurements of the angular distribution of diffuse irradiance

Dynamic Effects of Diabatization in Distillation Columns

Generating the optimal magnetic field for magnetic refrigeration

Simulating wind energy resources with mesoscale models: Intercomparison of stateof-the-art

On numerical evaluation of two-dimensional phase integrals

Impact of the interfaces for wind and wave modeling - interpretation using COAWST, SAR and point measurements

Alkali Release from Typical Danish Aggregates to Potential ASR Reactive Concrete

Prediction of airfoil performance at high Reynolds numbers.

Single Shooting and ESDIRK Methods for adjoint-based optimization of an oil reservoir

A note on non-periodic tilings of the plane

Design of Robust AMB Controllers for Rotors Subjected to Varying and Uncertain Seal Forces

Higher-order spectral modelling of the diffraction force around a vertical circular cylinder

A zero-free interval for chromatic polynomials of graphs with 3-leaf spanning trees

On the Einstein-Stern model of rotational heat capacities

On a set of diophantine equations

Multi (building)physics modeling

Solar radiation and thermal performance of solar collectors for Denmark

Validation and comparison of numerical wind atlas methods: the South African example

Feasibility of non-linear simulation for Field II using an angular spectrum approach

A Blue Lagoon Function

2D PIM Simulation Based on COMSOL

Determination of the minimum size of a statistical representative volume element from a fibre-reinforced composite based on point pattern statistics

Resistivity survey at Stora Uppåkra, Sweden

Transmuted distributions and extrema of random number of variables

Battling Bluetongue and Schmallenberg virus Local scale behavior of transmitting vectors

Reflection and absorption coefficients for use in room acoustic simulations

Comparison between Multitemporal and Polarimetric SAR Data for Land Cover Classification

A comparison study of the two-bladed partial pitch turbine during normal operation and an extreme gust conditions

Space charge fields in DC cables

Application of the MCNPX-McStas interface for shielding calculations and guide design at ESS

Aalborg Universitet. Land-use modelling by cellular automata Hansen, Henning Sten. Published in: NORDGI : Nordic Geographic Information

Radiometric Measurements of Environmental Radioactivity Beta Counting, Alpha and Gamma Spectrometry

Interactive Theorem Provers

Plane Wave Medical Ultrasound Imaging Using Adaptive Beamforming

Potential solution for rain erosion of wind turbine blades

A systematic methodology for controller tuning in wastewater treatment plants

Wake decay constant for the infinite wind turbine array Application of asymptotic speed deficit concept to existing engineering wake model

Validity of PEC Approximation for On-Body Propagation

GIS Readiness Survey 2014 Schrøder, Anne Lise; Hvingel, Line Træholt; Hansen, Henning Sten; Skovdal, Jesper Høi

Berøringsløs optisk måling af gassammensætning ved UV og IR spektroskopi

Design possibilities for impact noise insulation in lightweight floors A parameter study

The M/G/1 FIFO queue with several customer classes

Group flow, complex flow, unit vector flow, and the (2+)-flow conjecture

Development of a Dainish infrastructure for spatial information (DAISI) Brande-Lavridsen, Hanne; Jensen, Bent Hulegaard

Aalborg Universitet. The number of independent sets in unicyclic graphs Pedersen, Anders Sune; Vestergaard, Preben Dahl. Publication date: 2005

Aalborg Universitet. All P3-equipackable graphs Randerath, Bert; Vestergaard, Preben Dahl. Publication date: 2008

Upper and Lower Bounds of Frequency Interval Gramians for a Class of Perturbed Linear Systems Shaker, Hamid Reza

Advantages and Challenges of Superconducting Wind Turbine Generators

Unknown input observer based scheme for detecting faults in a wind turbine converter Odgaard, Peter Fogh; Stoustrup, Jakob

The structure of a nucleolytic ribozyme that employs a catalytic metal ion Liu, Yijin; Wilson, Timothy; Lilley, David

An initial investigation of the GOCE error variance-covariance matrices in the context of the GOCE user toolbox project

Citation for pulished version (APA): Henning, M. A., & Yeo, A. (2016). Transversals in 4-uniform hypergraphs. Journal of Combinatorics, 23(3).

On the Unique D1 Equilibrium in the Stackelberg Model with Asymmetric Information Janssen, M.C.W.; Maasland, E.

Aalborg Universitet. Bounds on information combining for parity-check equations Land, Ingmar Rüdiger; Hoeher, A.; Huber, Johannes

Application of the wind atlas for Egypt

Vindkraftmeteorologi - metoder, målinger og data, kort, WAsP, WaSPEngineering,

Online algorithms for parallel job scheduling and strip packing Hurink, J.L.; Paulus, J.J.

Neutronics calculations for the ITER Collective Thomson Scattering Diagnostics

A beam theory fracture mechanics approach for strength analysis of beams with a hole

Tilburg University. Two-Dimensional Minimax Latin Hypercube Designs van Dam, Edwin. Document version: Publisher's PDF, also known as Version of record

Phase Equilibrium in Amino Acid Salt Systems for CO2 Capture

On machine measurements of electrode wear in micro EDM milling

Computer-Checked Meta-Logic

Conceptual design of a thorium supplied thermal molten salt wasteburner

Transcription:

Downloaded from orbit.dtu.dk on: Mar 18, 2019 Proving in the Isabelle Proof Assistant that the Set of Real Numbers is not Countable Villadsen, Jørgen Publication date: 2018 Document Version Publisher's PDF, also known as Version of record Link back to DTU Orbit Citation (APA): Villadsen, J. (2018). Proving in the Isabelle Proof Assistant that the Set of Real Numbers is not Countable. Paper presented at International Workshop on Theorem proving components for Educational software, Oxford, United Kingdom. General rights Copyright and moral rights for the publications made accessible in the public portal are retained by the authors and/or other copyright owners and it is a condition of accessing publications that users recognise and abide by the legal requirements associated with these rights. Users may download and print one copy of any publication from the public portal for the purpose of private study or research. You may not further distribute the material or use it for any profit-making activity or commercial gain You may freely distribute the URL identifying the publication in the public portal If you believe that this document breaches copyright please contact us providing details, and we will remove access to the work immediately and investigate your claim.

Proving in the Isabelle Proof Assistant that the Set of Real Numbers is not Countable Jørgen Villadsen DTU Compute, AlgoLoG, Technical University of Denmark, 2800 Kongens Lyngby, Denmark jovi@dtu.dk Abstract We present a new succinct proof of the uncountability of the real numbers optimized for clarity based on the proof by Benjamin Porter in the Isabelle Analysis theory. 1 Introduction In 1874 Georg Cantor proved that set of real numbers is not countable or, no surjective function from the natural numbers to the real numbers exists. theorem f :: nat real. surj f We use the Isabelle proof assistant, more precisely Isabelle/HOL, and omit the socalled cartouches around formulas as is common in recent papers about formalizations in Isabelle. Since the notion of the real numbers in Isabelle is not grounded in decimal expansions, Cantor s elegant diagonal argument from 1891 is not suitable. With some effort we have ordered by year the immediately known formalizations of the theorem. ProofPower Rob Arthan 2003 Metamath Norman Megill 2004 Mizar Grzegorz Bancerek 2004 HOL Light John Harrison 2005 Isabelle Benjamin Porter 2005 Coq Nickolay Shmyrev 2006

Freek Wiedijk s comprehensive list Formalizing 100 Theorems has been a valuable starting point: http://www.cs.ru.nl/~freek/100/ We present a new succinct proof optimized for clarity based on the proof by Benjamin Porter in the Isabelle Analysis theory and inspired by the traditional proof (Hansen 1999, p. 45). The full proof is available in the appendix and also online here together with other results about countable and uncountable sets: https://github.com/logic-tools/continuum We note that the theorem can also be phrased as follows using quantifiers only. proposition f. y :: real. x :: nat. y = f x We have not yet fully investigated if our approach can be generalized to other proofs except that we have recently considered a related proof, namely that the set of rational numbers is in fact countable, based on the rather scattered formalization in the Isabelle Library which incidentally differs in a number of ways from the traditional proof (Hansen 1999). 2 A Possible New Feature in Isabelle As a possible new feature in Isabelle we use... to signify a proof found by Isabelle s Sledgehammer tool (Blanchette 2017), possibly also using some more or less obvious proof methods. We suggest to implement it like a kind of extended sorry proof methods that is a fake proof pretending to solve the pending claim without further ado (cf. the Isabelle/Isar Reference Manual in the Isabelle distribution). But when the Sledgehammer tool finds a proof then the... should somehow change color and/or shape to indicate this. In this way Isabelle proofs can still be replayed. Perhaps the... notation is not ideal since it is used for other things in Isabelle.

3 The Proof Skeleton We provide a proof skeleton and continue the proof in the following section. The proof is by contradiction. assume f :: nat real. surj f show False We first obtain a name for the surjective function. from f. surj f obtain f :: nat real surj f.. then have assumption: n. f n = z for z... Here.. is a standard proof; it abbreviates by standard and performs elementary proof steps depending on the application environment. And the... proof is a resolution proof by (metis surj_def) which we for further transparency separate into two proof steps unfolding surj_def by metis as shown in the appendix. In our proof we now obtain a certain natural-numbers-indexed set D of real numbers with a kind of diagonalization property. obtain D :: nat real set ( n. D n) {} f n D n for n We defer the proof of the existence of the indexed set D to the next section. From the indexed set D we easily obtain the contradiction. then obtain e n. f n = e... moreover from assumption have n. f n = e. Here is the resolution proof by (metis INT_E UNIV_I ex_in_conv) as shown in the appendix.

4 The Indexed Set D We need to fill the gap in the proof skeleton regarding the indexed set D. We start by defining two functions of three arguments. obtain L R :: real real real real *: L a b c < R a b c {L a b c.. R a b c} {a.. b} c {L a b c.. R a b c} if a < b for a b c We here include the complete proof of the existence of the two functions, except for the... proofs shown in the appendix. have x y. a x x < y y b (x c c y) if a < b for a b c :: real... then have x y. x < y {x.. y} {a.. b} c {x.. y} if a < b for a b c :: real... then show?thesis... We recursively define an indexed set of intervals given by pairs the endpoints of the intervals. define P :: nat real real P rec_nat (L 0 1 (f 0), R 0 1 (f 0)) (λn (x, y). (L x y (f (Suc n)), R x y (f (Suc n)))) We prove that the endpoints are ordered as expected; again the... proofs are shown in the appendix. with *(1) have 0: fst (P n) < snd (P n) for n...

Finally we define the indexed set of intervals and prove the required properties. define I :: nat real set I λn. {fst (P n).. snd (P n)} with 0 have I n {} for n... moreover from 0 *(2) have decseq I... ultimately have finite S ( n S. I n) {} for S... moreover have closed (I n) for n... moreover have compact (I n) for n... ultimately have ( n. I n) {}... moreover from 0 *(3) have f n I n for n... 5 Conclusion We have with good results explained the proof to a group of mathematicians with little or no knowledge of formal methods. In particular the notation is useful and might be relevant to implement, perhaps with the Proof Strategy Language available in the Isabelle Archive of Formal Proofs. References Vagn Lundsgaard Hansen (1999): Fundamental Concepts in Modern Analysis. World Scientific. Jasmin Christian Blanchette (2017): User s Guide to Sledgehammer. Isabelle Distribution. Appendix: Formalization in Isabelle theory Scratch imports Complex_Main begin theorem f :: nat real. surj f proof assume f :: nat real. surj f show False from f. surj f obtain f :: nat real surj f.. then have assumption: n. f n = z for z unfolding surj_def by metis

obtain D :: nat real set ( n. D n) {} f n D n for n obtain L R :: real real real real *: L a b c < R a b c {L a b c.. R a b c} {a.. b} c {L a b c.. R a b c} if a < b for a b c have x y. a x x < y y b (x c c y) if a < b for a b c :: real using that dense less_le_trans not_le not_less_iff_gr_or_eq by (metis (full_types)) then have x y. x < y {x.. y} {a.. b} c {x.. y} if a < b for a b c :: real using that by fastforce then show?thesis using that by metis define P :: nat real real P rec_nat (L 0 1 (f 0), R 0 1 (f 0)) (λn (x, y). (L x y (f (Suc n)), R x y (f (Suc n)))) with *(1) have 0: fst (P n) < snd (P n) for n unfolding split_def by (induct n) simp_all define I :: nat real set I λn. {fst (P n).. snd (P n)} with 0 have I n {} for n using less_imp_le by fastforce moreover from 0 *(2) have decseq I unfolding I_def P_def split_def decseq_suc_iff by simp ultimately have finite S ( n S. I n) {} for S using decseqd subset_empty INF_greatest Max_ge by metis moreover have closed (I n) for n unfolding I_def by simp moreover have compact (I n) for n unfolding I_def using compact_icc compact_int_closed decseqd inf.absorb_iff2 le0 by simp ultimately have ( n. I n) {} using INT_insert compact_imp_fip_image empty_subseti finite_insert inf.absorb_iff2 by metis moreover from 0 *(3) have f n I n for n unfolding I_def P_def split_def by (induct n) simp_all then obtain e n. f n = e using INT_E UNIV_I ex_in_conv by metis moreover from assumption have n. f n = e. end Jørgen Villadsen, DTU Denmark - Based on work by Benjamin Porter, NICTA Australia