The Analytical Engine
Charles Babbage는 1830년대에 해석 기관을 설계했다 — 메모리('저장소'), 처리 장치('연산실'), 천공 카드를 통한 입력, 그리고 조건부 분기를 갖춘 기계식 컴퓨터였다. 비용과 제조상의 제약으로 인해 결코 건설되지 않았지만 그 설계는 논리적으로 완전했다. Lovelace의 주석은 그것이 어떻게 작동했을지에 대한 가장 명확한 설명이다.
베르누이 수 알고리즘
Note G는 해석 기관을 사용하여 베르누이 수를 계산하기 위한 연산 표를 담고 있다 — 현대 용어로는 본질적으로 알고리즘이다. 반복문, 조건부 연산, 그리고 여러 변수의 동시 관리를 포함한다. 그것은 Babbage가 문서화한 어떤 것보다도 더 복잡했으며, 역사가들은 일반적으로 그 설계를 Babbage보다는 Lovelace에게 주로 돌린다.
계산을 넘어선 비전
더욱 중요한 것은, Lovelace가 그 기관이 단지 계산 기계가 아니라 기호 조작 장치라는 것을 깨달았다는 점이다 — 숫자뿐 아니라 기호적으로 표현될 수 있는 어떤 대상이든지 연산할 수 있었다. '그 기관은 어떤 정도의 복잡성이나 범위의 정교하고 과학적인 음악 작품을 작곡할 수 있을지도 모른다'고 그녀는 썼다. 이러한 통찰 — 계산은 본질적으로 산술에 관한 것이 아니라는 통찰 — Church-Turing 계산 가능성 이론을 100년 앞서간다.
그녀의 역할에 대한 논쟁
일부 역사가들은 Lovelace의 기여가 주로 편집상의 것이었다고 주장했다 — 핵심 아이디어는 Babbage에게서 나왔다는 것이다. 그들 사이의 서신은 Babbage의 개정과 제안이 포함된 광범위한 협력을 보여준다. 그러나 Note G의 베르누이 알고리즘과 계산의 본질에 관한 철학적 통찰은 Lovelace의 기여가 주된 것으로 보인다.
Frequently Asked Questions
Ada Lovelace는 실제로 무엇을 프로그래밍했는가?
Lovelace는 1843년 Note G에서 Babbage의 해석 기관을 사용하여 베르누이 수를 계산하기 위한 알고리즘을 작성했는데, 이는 첫 번째 컴퓨터 프로그램으로 여겨진다. 이 알고리즘은 반복문과 조건부 연산을 포함한다. 그녀는 또한 컴퓨터가 숫자뿐 아니라 어떤 기호적 표현도 조작할 수 있다는 원칙을 명확히 했는데, 이는 현대 계산 이론을 미리 예상한 것이다.
Ada Lovelace가 정말 첫 번째 프로그래머였는가?
이 주장은 논쟁의 대상이다. Lovelace의 1843년 Note G는 기계에 의한 실행을 의도한 첫 번째 문서화된 알고리즘을 담고 있다. 일부 역사가들은 Babbage가 알고리즘에 상당히 기여했으며 Lovelace의 역할이 현대의 대중적 기술에 의해 과장되었다고 주장한다. 그러나 산술을 넘어선 계산의 철학적 비전은 진정으로 Lovelace의 통찰로 보인다.
베르누이 수란 무엇인가?
베르누이 수는 수론과 깊은 연관을 가진 유리수의 수열로, 정수의 거듭제곱 합 공식, Riemann 제타 함수, 삼각함수의 Taylor 급수에 나타난다. 처음 몇 개는 B₀=1, B₁=-1/2, B₂=1/6, B₄=-1/30이다. Lovelace의 베르누이 수 계산 알고리즘은 기계 실행을 위해 설계된 첫 번째 알고리즘이었다.
Geniuses.Club에서 전체 기사 읽기