for academia, mathematics, music, art and philosophy

Showing posts with label proof writing. Show all posts
Showing posts with label proof writing. Show all posts

Bracket Notation for Mathematical Proofs

The bracket notion for mathematical proofs is an adaptation of the Fitch notation for Gentzen's natural deduction proof system. It has led to the development of the SOFiA proof assistant. This post brings together some videos explaining the bracket notation and the first-order formal language for mathematics in the context of the bracket notation.

1. General Overview

~ 20 min

2. Building Blocks for Statements

~ 1 hour


3. Examples of Forming Statements

~ 40 min


4. Examples of Forming Statements (Continued)

~ 35 min


5. Concluding Quantified Statements

~ 35 min


6. Concluding from Quantified Statements

~ 1 hour

Read More

Python-Based Introduction to Mathematical Proofs

Scroll down for video lectures

1. What is a Mathematical Proof?  

Mathematical proof is a method of discourse which allows a human being to: 
  • discover new mathematical knowledge,
  • analyze existing mathematical knowledge,
  • verify truthfulness of a piece of mathematical knowledge. 
The ability to construct a mathematical proof is part of human nature. It is closely related to the ability to form thoughts and reason.

Mathematical knowledge is knowledge of abstract principles about our universe. As such, it requires use of symbols to represent entities that are inherently abstract. For example, the symbol 2 may represent 2 apples or 2 pears. The number 2 is an abstract entity, since it is not confined to any of these concrete representations. 

Mathematics functions at different levels of abstraction too. For instance, we may write a symbol, such as n, to represent any number. In one case we could have n = 2, and in another case we could have n = 3. This is a second layer of abstraction compared to the layer of each specific number, such as number 2. Symbols representing abstract entities form basic ingredients of mathematical proof. The most complex parts of mathematical proofs deal with manipulations of these symbols, which sometimes may take an extremely long time. To optimize a proof, it is important to understand its most fundamental components. The aim of these lectures is to provide an exposition of these fundamental components. 

Activity. Get Python IDE, if you do not already have one: there are many available, Spyder is recommended (very easy to install). Then, get the file sofia.py, which can be obtained from https://github.com/ZurabJanelidze/sofia. Save sofia.py to the runtime directory of your Python IDE. To test that you have done it correctly, create a separate file named something.py, copy-paste the following code in that file, and run the file with your Python IDE:

import sofia
sofia.help()

Read More