수학을 전공하려는 목적이라면 더 상세하고 꼼꼼하게 공부해야 하겠지만, 지식의 축적이나 확장 수준에서 시작하는 공부이기 때문에, 강의 노트를 살펴보고, 비슷한 책의 관련된 내용들을 가져와서 살펴보겠다.

 

 

Ken Monks | Professor of Mathematics

1. Start working on your Take Home Final Exam. To help keep you on track, put a draft of your Take Home Final Exam pdf in Dropbox before class on Thursday. It should use the Homework Template – Article style linked to below, not the usual Homework Templa

monks.scranton.edu

여기에 있는 강의 노트를 중심으로 "BOOK OF PROOF"  (link) 를 참조해서 정리하려고 한다. 

 

강의 노트 목차는 아래와 같다. 

 

0 Introduction
1 What is a proof?

  1.1 Formal Proof Systems
  1.2 Environments and Statements
2 The Language of Mathematics 

 2.1 Identifiers, Variables, and Constants
 2.2 Expressions and Statements 
 2.3 Substitution and Lambda Expressions
3 Rules of Inference in Mathematics

 3.1 Template Notation for Rules of Inference
4 Propositional Logic 

 4.1 The Statements of Propositional Logic
 4.2 The Rules of Propositional Logic
 4.3 Formal Proof Style
5 Predicate Logic

 5.1 Quantifiers
 5.2 Statements
 5.3 Declarations
 5.4 Rules of Inference
 5.5 Equality

 

6 Proof Shortcuts and Semiformal Proofs 

 6.1 Use Theorems as Rules of Inference
 6.2 Substitute Logically Equivalent Expressions
 6.3 Use Famous Logic Theorems Freely
 6.4 Identify Certain Statements
 6.5 Skip Some Logical Rules of Inference
 6.6 Omit Most Premise Citations, Line Labels, and End-of-Subproof Symbols 
 6.7 Eliminate Extra Parentheses for Associative Binary Operators
 6.8 Combine consecutive ∀+ rules 
 6.9 Use Transitive Chains! 
 6.10 Use Derived Rules of Inference 

 

7 The Natural Numbers

 7.1 The Peano Postulates
 7.2 Strong Induction
 7.3 Number Theory
 7.4 Applications: Cardinal and Ordinal Numbers

8 Sequences

 8.1 Finite and Infinite Sequences
 8.2 Representations of Sequences
 8.3 Reindexing
 8.4 Recursive Definitions and Sequences


9 Integer, Rational, and Real Numbers

 9.1 Notation
 9.2 The Axioms for Real Numbers
 9.3 Basic Properties of Real Numbers
 9.4 Integers
 9.5 Extending Definitions
 9.6 Infinite Series and Decimal Representation

 

10 Sets, Functions, Numbers

 10.1 Basic Definitions from Set theory
 10.2 Shortcuts involving sets
 10.3 Famous Sets of Numbers
 10.4 Functions
 10.5 Relations

 

11 Expository Proofs

 11.1 Traditional Proofs
 11.2 Specific Rules for Mathematical Writing
 11.3 Notation
 11.4 Syntax
 11.5 Equations and Formulas
 11.6 Writing Technique
 11.7 Mathematical Typesetting

 

12 Combinatorial Proofs
 12.1 Combinatorics
 12.2 Combinatorical Collections and Expressions
 12.3 Combinatorial Proofs
 12.4 Combinatorial subtraction, division, and inequality

 

다른 강의 목차들을 참고하면, 많은 경우에 Set theory 에서 시작하는데, 이 강의에서는 증명 방법 자체에 대한 용어에 대한 부분으로 시작하고, 집합에 대한 내용은 후반부에 나온다. 다만, 수학적인 증명이 잘 보이는 기학학에 관련된 부분이 없는데, 이 부분을 보충하기 위해서, 기학학 정리와 관련된 문제들을 찾아서 같이 연결해서 살펴보려고 한다.  목표한 일정은 일주일에 한번정도 페이지를 정리해보려고 생각하는데, chapter 5 까지 내용을 정리해서 2~3회차로 정리하고, 6~12 까지는 한 chapter를 1~2회차로 정리할 생각이다. 여기에 기하학에 대한 내용들을 약간 보충하려고 한다. 전체 11~14회차로 정리할 수 있을 것으로 생각한다. 목표대로 진행한다면 8월까지 진행하면 마무리 할 수 있을 것 같다. 

 

- 내용을 잘 정리할 수 있다면, 간단한 tex 파일로 만드는 것도 생각하고 있다.

 

유튜브에 나와 있는 수학적 증명 과정을 볼 수 있는 링크 : https://youtu.be/DuJRlr2JfUY

'Mathematical Proof' 카테고리의 다른 글

수학적 증명 방법 공부 - 3  (0) 2023.06.14
수학적 증명 방법 공부 - 2  (0) 2023.05.18
수학적 증명 방법 공부 - 1  (0) 2023.05.09
Mathematical Proof Learning  (0) 2023.04.09

작년말에 등장한 OpenAI의 ChatGPT 이 세상에 가져온  영향이 크다. 많은 사람들이 AI 기술의 발달을 확인할 수 있었고, 단순한 지식의 축적과 요약에 있어서는 아주 뛰어난 성능을 보여줬다. GPT는 Generative Pre-trained Transformer 를 말하는데, LLM-Large Language Model-의 한가지이다. 내가 이해한 간략한 원리는 단어들 사이의 상관관계를 확률모델로 구현하는데, 아주 많은 자료 입력을 통해서 유의미한 상관관계에 따른 결과를 만들어 내는 것이다. 이것은 확률에 기반해서 결과를 만들어 내는 것이기 때문에, 논리적인 추론에 기반하여 만들어진 결과가 아니다. 언어로 기술된 내용들의 요약이나 결과 추출은 유의만한 결과를 보여주지만, 수학적인 내용에 서는 약점을 보인다. 

 

수학적인 증명에서 어떤 명제는 참 혹은 거짓 중 하나가 된다. 증명과정은 참으로 확인된 내용들을 연결하여 완결된 증명을 한다. 중간에 확률이 개입하여 결과에 영향을 줄 수 있는 여지가 없다. 하지만, LLM의 학습을 위해서 사용하는 자료들에 포함된 수식을 식별하고 분리하는 어려움 한가지는 쉽게 예상해 볼 수 있다. 많은 수학 수식을 표현하기 위해 사용되는 것은 LaTex에 기초를 둔 TeX 문법을 적용한다. 이 표현은 처리를 거치기 전에는 수식의 형태가 나타나지 않는다. 하지만, 그런 내용은 학습과정에서 충분히 해결 가능하다고 하고, 아래 같은 경우를 생각해보자.

 

1+1 = 10, 2+2 = 11, 3+3 = 12, 4+4 = 13, ...

 

이런 수삭들이 있다고 하면, 일견 수학적으로 오류가 있다고 할 수도 있다. 하지만, 진법이라는 수학 개념을 적용한다면 모두 참인 명제이다. 이진법으로 계산하는 1+1=10 또한 맞으며, 4+4 = 13, 이것은 5진법으로 계산하면 맞는 얘기이다. 이런 모든 명제가 참으로서 훈련된다면, 어떤 수식 계산에서 = 가 나타났을 때 이러한 진법의 개념이 동반되지 않고 이전된다면 잘못된 명제 진행이 된다. 이런 문서들을 모두 배제할 수 없다. 이것도 수학의 일부분이며, 전산학의 기본은 0/1을 이용한 이진법에 기반하고 있고, 아날로그에 기반하는 회로라가 하면 multi-nary가 가능할 수 있다. 쉽게 생각해볼 수 있는 명제 하나를 얘기해보자. 

 

- 삼각형의 내각의 합은 180이다.

 

이것은 "평면에서 한 직선과 평행하고 한점을 통과하는 직선의 유일성"에 기반한 명제이다.  이 공리를 배제한 비유클리드 기하학에서는 적용할 수 없는 명제이다. 즉, 수학적인 명제를 정확하게 정의하고 설명하기 위해서는 그 명제가 위치해 있는 그 영역에서만 적용할 수 있다는 것이다. 영역이 바뀌면, 기본 적인 명제들도 바뀌는 것이다. 그렇게 때문에, LLM에서 질문에 대한 답변은 다양한 영역에서 가장 비슷해보는 명제들을 엮어서 만들어 낸다. 하지만, 그 질문에 해당하는 영역에만 한정해서 답변을 만드는 것이 아니기 때문에 나오는 답변은 오류를 포함하고 있을 가능성이 높다. 실제 최근에 나온 LLM에서 수학문제 해결에 대한 결과는 다음에서 참고할 수 있다. 

 

Model   MATH     MMLU-STEM     OCWCourses     GSM8k  
Minerva 50.3% 75% 30.8% 78.5%
Published state of the art    6.9% 55% - 74.4%
Minerva 540B significantly improves state-of-the-art performance on STEM evaluation datasets.

Source : https://ai.googleblog.com/2022/06/minerva-solving-quantitative-reasoning.html

 

지식의 축적과 이해는 중요하다. 그렇지만 최근에 보이는 인공지능의 발전 방향을 생각하면 이런 수학적 엄밀한 증명방법을 익히고, 준비하는 것이 앞으로는 더 필요할 것으로 생각한다. 그래서, 여기에 관련된 내용들을 정리해보려고 한다. 

 

엄밀한 수학적 증명을 배울 수 있는 방법을 찾아보면, 수업이나 교재가 많지 않다. 알려져 있는 증명 단계들을 따라하면서, 개인마다 논리적인 방법이나 과정을 배우는 방법이다. 실제로 수학적인 증명을 위해서는 영역마다 필요한 사전 지식들이 필요하다. Axiom - Theorem 들이 이런 것들이다. Euclid's Elements 경우도 정의(definition), 공리(axiom), 가정(postulate), 통념(common notion)에 기반하여 전체 명제들을 세우고 증명해 나간다. 이런 전체 과정에서 엄밀함을 만들어 가는 과정이 수학적 증명이라고 하겠다. 

 

대학에서 수학을 전공하면 들어야 하거나 선택할 수 있는 수업들이 있기다. 아래의 두강의는 강의 노트를 확인 할 수 있는 수업들이다. 각 대학마다 비슷한 과목들이 있고, 그 내용을 소개하는 페이지들을 찾을 수 있을 것이다.

'Mathematical Proof' 카테고리의 다른 글

수학적 증명 방법 공부 - 3  (0) 2023.06.14
수학적 증명 방법 공부 - 2  (0) 2023.05.18
수학적 증명 방법 공부 - 1  (0) 2023.05.09
수학적 증명 방법 공부 - 0  (0) 2023.05.03

출처:  http://usaco.org/index.php?page=viewproblem2&cpid=1180


문제 설명

4면체 주사위 3개(A, B, C) 가 있고, 주사위의 각 면의 숫자는 1부터 10 사이의 숫자이다. 두 주사위를 던져서 높은 숫자가 많이 나오는 주사위가 이겼다고 할때, A > B > C > A 혹은 A < B < C < A 가 되는 조합이 있는지 판별하는 문제이다. 입력으로는 주사위 A, B의 숫자들이 주어진다.

입력

3
4 5 6 7 2 4 5 10
2 2 2 2 1 1 1 1
1 1 1 1 2 2 2 2

출력

yes
no
no

 


문제 풀이

주사위 C의 숫자들이 1 ~ 10 이고, 4개의 숫자를 선택할때 가능한 모든 조합 O(N^4)를 해도 10^4 이고, 주사위 2개를 비교해서 편정하는 경우도 4^2 이므로, 전체 계산량은 대략 10^5 정도로 가능하다. 중첩된 Loop 로 모든 경우를 비교하는 알고리즘으로 가능하다. 

프로그램 내용

더보기
...
for(i)
	for(j)
    	for(k)
        	for(l)
            	dice_c = {i, j, k, l}
                if( dice_c >dice_b && dice_b >dice_a && dice_a > dice_c)
                	flag = true; break;
				if( dice_b >dice_c && dice_a >dice_b && dice_c > dice_a)
                	flag = true; break;
if(flag)
	cout << "yes"
else
	cout << "no"

 

'USACO' 카테고리의 다른 글

USACO 2022 January Bronze Problem 1  (0) 2022.02.04

+ Recent posts