피보나치 수열 같은 경우는 그 항들의 집합을, 피보나치 수열의 일반항 Fn에 대해 {x | exists n in N s.t. x=Fn} 라고 수학적인 존재 양화문으로 표현 가능함
근데 팩토리얼 같은 경우는 아무리 떠올려봐도 필요조건까지밖에 못만들겠음. 어떻게 하면 될까요?
이거 말고도, "알고리즘의 결과로서 획득되는 값"으로 정의된 개념을 정확히 동치인 수학적 존재 양화문으로 바꾸는 방법이 항상 존재하는지에 관해 궁금합니다.
피보나치 수열 같은 경우는 그 항들의 집합을, 피보나치 수열의 일반항 Fn에 대해 {x | exists n in N s.t. x=Fn} 라고 수학적인 존재 양화문으로 표현 가능함
근데 팩토리얼 같은 경우는 아무리 떠올려봐도 필요조건까지밖에 못만들겠음. 어떻게 하면 될까요?
이거 말고도, "알고리즘의 결과로서 획득되는 값"으로 정의된 개념을 정확히 동치인 수학적 존재 양화문으로 바꾸는 방법이 항상 존재하는지에 관해 궁금합니다.
본문에서 Fn을 n!로 바꾸면 되지 않겠니
n!의 정의를 말하고있는거예요. n!의 정의는 특정한 절차를 따랐을 때 결과적으로 획득된 값으로 정의된 거로 알고 있는데 그런거 말고 컨디션의 존재성 비존재성 등으로 완전히 이러한 절차들의 결과가 가지는 성질들을 대체해버리고 싶어요
예를들어 n!는 result=1; current=1; for current<=n, (result=result*current; current+=1); 를 했을 때 result의 값으로서 정의되잖습니까
나는 네가 뭔 말을 하고싶은지도 모르겠음 Fn의 정의는 마음에 들고 n!은 그렇지 않을 이유가 있나?
피보나치 수열 같은 경우 적당히 Fn에 적당히 n을 제시하면 그걸 검증해서 어떤 수 x가 피보나치 수열에 포함되는지 여부를 창발적으로 그리고 상수시간에 증명가능한데, n! 같은 경우는 그렇지 못하다는 차이가있고, 공리적으로 설명가능하게 정의된 게 아닌 것 같아서요. 예를들어 어떤 수 x가 팩토리얼 집합에 포함되는지에 관해 생각할 때, (적당한 자연수 n이 존재해서 n이하의 임의의 자연수 m을 택해도 x는 m으로 나눠지고, x는 n보다 큰 소수로는 나눠지지 않는다) 와 같은게 공리적으로 정의된 컨디션이라고 생각하는데 저건 필요조건인건 맞지만 충분조건인지는 모르겠습니다. 즉 n!의 정의는 "이러한 과정을 하다가 조건 p가 만족되는 순간이 오면 그 때의 값을 n!" 라고 정의한다와 같은건데, 뭔가 별로예요.
그니까 뭔 소린지 모르겠다고 팩토리얼도 n!=n*(n-1)!으로 귀납적으로 정의되는 거고 피보나치도 F(n)=F(n-1)+F(n-2)로 귀납적으로 정의되는 수열인데 왜 후자는 검증이 되고 전자는 검증이 안 됨?
뭐랄까 최대공약수 같은 경우도 유클리드 알고리즘에 따라서 결과적으로 얻어지는 수로서 정의할 수도 있지만, 반대로 수학적 컨디션을 만족시키는, 예를들어 "정수 n, m을 둘다 나누는 자연수 d이면서, d보다 작은 어떤 자연수도 n과 m을 동시에 나누진 않는다" 인 d로서 정의할 수도 있잖아요. 저는 두번째 방법처럼 정의하는게 항상 가능한 건 아닌지가 궁금한 겁니다
귀납적으로 정의한다는게 결국 절차를 따라갔을 때 결과적으로 얻게되는 기호를 수학적으로 해석해서 얻게되는 값을 말하는건데 제가 방금 드린 예시를 생각해보세요. 최대공약수는 굳이 절차적으로 얻어지는 값으로 정의하지 않더라도 존재양화문에의해 동치로 서술가능합니다 (not exists x s.t. x
그럼 어떤 수가 피보나치 수인지 네가 원하는 대로 확인하는 방법은 뭔데
아니 말을 좀 잘못한거같은데 아무튼 최대공약수를 굳이 유클리드호제법에따라 결정되는 값으로 정의하지 않는게 기본인거고 그렇게 할 수 있따는 걸 알고있습니다
공식의 지수항이 n을 품고있습니다. 거기에 적당한 자연수 n을 대입했을때 계산된 결과값이 x가 나온다는게 확인되면 x는 피보나치 수들의 집합에 원소임이 확인되는거죠
아 생각해보니 최대공약수 예시는 좀 잘못된거같기도. 유클리드 호제법 과정 자체가 최대공약수 정의를 사용하네요
그럼 지수에 n을 대입하는 건 “공리적” 이고 팩토리얼에 n을 대입하는건 “공리적”이 아니라고 생각하는 거임?
아무튼 팩토리얼은 분명히 어떤 컨디션으로서 정의된건데 그게 공리적인 존재양화로 표현될 수 없는것 같다는거는 상당히 답답합니다
제 말은요 동치로 표현할수있냐는 말이에요 바꿔서. 팩토리얼에 n을 대입하는건 n을 넣고 n-1을 곱하고, n-2를 곱하고, ... 를 1을 곱할때까지 반복하는 거잖아요. 근데 그게 정적인 컨디션으로서 표현되는게 아니잖아요. 정적인 컨디션이란건 분명히 거기에 존재하거나 존재하지 않는 무언가에 대한 확언들의 조합으로 이뤄진 문장을 말합니다
예를 들어 2^n을 계산하는 것도 정적인 건 아니지. 2를 곱하고, 또 곱하고, …를 내가 n번 반복해야 하니까. 곱하는 수가 변하지 않는다는 사실만 빼면 팩토리얼이랑 다를 게 없음. 그럼 어떤 수가 2의 지수 꼴인지 확인하는 것도 마음에 안 들겠네?
공리는 (모든 ~가 ~하면) (모든 ~가 ~하다) 혹은 (모든 ~가 ~하면) (적어도 하나가 ~하다) 혹은 (적어도 하나가 ~하면) (모든 ~가 ~하다) 혹은 적어도 하나가 ~하면 적어도 하나가 ~하다 식으로 and or not at least forall 등으로 한정된 케이스에서 결과를 한정하여 변환가능하도록 규정되어있다고 생각하는데 그중에 저런식으로 "이러한 과정을 따라가면 이렇게 된다"는 거에 대한 확언은 없는거아닌지요
아니 됐고 그래서 어떤 수가 2^n 꼴인지 확인하는 건 마음에 드니 안 드니
x가 2^n의 집합에 포함되는지? 생각해보니 이것부터가 절차적인 방법으로 정의된 예인 것 같기도 하네요. 그리고 왜 시비를 거는건가요 저는 모든 것들이 되도록 수학적 의미의 교집합으로 표현될 수 있었으면 좋겠다는 바람에서 이에 대한 의견을 듣고 싶었을 뿐이에요. 물론 2^n에 관한 부분도 마찬가지긴 하지만, 만약 이처럼 완전히 강력한 예가 나온다면 그냥 "알고리즘도 수학의 한 부분이구나" 라고 생각하고 받아들여야할지도 모르겠네요
예전부터 시그마 같은게 좀 불만이긴 했어요 2^n 같은것도 사실 "이러한 과정을 n번 반복하면" 과 같은 서술로 정의되는건데 공리적으로 "이러한 과정을 n번 반복" 한다는게 뭐를 의미하는건지는 안나와있잖아요
수학을 자동화하는 어떤 체계를 만들고싶을 때 순수히 공리를 함수로 봐서 각 함수들만 갖고 변환을 반복하다보면 증명가능한 모든 게 증명될 수 있을텐데 하는 생각이었고, 한편 그와중에 증명 속에 "이러한 과정을 반복하다보면 나오는 것" 과 같이 알고리즘을 시뮬레이션 돌린 결과를 수학적 컨디션으로 받아들여서 쓰는 게 있다면 결국 공리계는 사실 공리들만 갖고 이뤄지는게 아니라 수학적 조건과 기계적 표현, 기계적 표현의 해석 등을 모두 갖추고 있어야 하는거같다 라는 생각이 들었네요
맞아. 어떤 걸 n번 반복한다는 건 사실 수학적으로 아주 엄밀한 문장이 아니야. 그럼 정확한 뜻은 뭐냐? 일반적으로 어떤 점화식 a(n)=f(a(n-1))이 주어지면 각각의 자연수 n마다 a(n)이 유일하게 잘 정의된다는 사실을 증명할 수 있음 (기초 집합론 책 참고). 이제, 예를 들어 a(n)=2^a(n-1), a(1)=2라는 점화식의
유일한 해 a(n)이 바로 2^n의 정의인거고, 이걸 일상에서는 2를 n번 곱했다고 표현하는 거지. 팩토리얼도 마찬가지고.
어쨌든 결론적으로 귀납적으로 정의된 수열들은 실제로 수학적으로 엄밀하게 잘 정의되는 게 맞음. 이게 네가 원하는 건지는 잘 모르겠다만 애초에 공리적이니 뭐니 하는 단어를 너 혼자만의 용법으로 쓰는 것 같긴 하다만
좋은 시간이었습니다. 그런데 p => q인 p가 있을때 이러한 p는 항상 ~q로부터 수학적으로 합당한 추론에 따라 범위를 좁혀가며 찾아낼 수 있는걸까요? 창발적이라고 하는 것들을 보면 그러한 p를 제시하고 정말 우연하게도 q로 귀결되는 걸 볼 수 있는데요. ~q로부터 추론가능한 것들이 p를 추출하는데에 아무런 도움이 안되지만 p를 생각하면 딱딱 맞아떨어져서 쉽게 q에 도달하는 그런경우가 있을까요? 암호화 같은 경우가 비슷한 예이긴 한데, 암호화는 그래도 단지 역추론으로 답을 구하는게 매우 비효율적일 뿐이지 전혀 동떨어진 건 아니라서요. 문제 풀이시 유한집합의 원소를 먼저 찾고 그게 무한집합의 부분집합에 포함되는지를 확인하는게 쉽고 무한집합의 부분집합을 먼저 찾고 거기서 유한집합의 원소를 제시하는건 어려웠어서
이렇듯 아예 그냥 "기호적으로 적당한 문자열의 브루트포싱"을 통해서만 답을 찾을 수 있고 그 외에 "추론"이라 할 만한 접근으로는 답을 찾을 수 없는 그런 경우가 있는지도 궁금하네요
피보나치 수열의 귀납적 정의 <=> 일반항 공식 을 증명할 때에 공리적 방법 외에 알고리즘의 결과와의 인간 주관적 매칭이 들어가있는지도 궁금하네요
근데 그건 아닐듯. 유도 과정에서 그런게 들어가있을지 몰라도 생각해보면 주어진 공식을 귀납법으로 검증하기만 하면 증명되는거니까 (귀납법조차 매우 어려운 케이스가 아닌 한) 공리적 과정 내에서 해결가능할듯
재귀적으로 정의된걸 재귀 최대한 안쓰고 새롭게 정의하는 그런건가?
댓글을 쭉 읽어봤는데 공리계와 정의는 섞어서 쓰는게 아님 언어로 치면 공리는 규칙이고 정의는 단어임 조건, 표기 이런건 공리계에 포함시켜 생각해야하는 그런게 아님
헉 감사합니다
2^n은 다루기 쉽지만 팩토리얼은 다루기 힘듦 그런거 아님?
귀납은 공리가 아니다? 라는 것은 어떤 것에서 비롯한 결론이야? 그런식이면, 수열을 다룰 때 자연스럽게 자연수 집합을 다뤄야 하는데, 자연수집합 부터가 귀납적인 공리를 이용해서 만든 집합 아님?
님 어떤게 n!으로 표현되는지 볼때 그 숫자를 1부터 쭉 계속 나눠서 마지막에 n으로 나눌때 그 값이 딱 1이 되면 시간 복잡도가 O(n) 아님? 댓글보고 얘도 될거 같아서