Mathe Toy라는 잘 알려져있지 않은 국산 수학 전문 프로그램을 소개한다.
3차원·2차원 그래프, 코딩 기능을 가진 거대 정수 연산기능과 다항식 계산기, 행렬 계산기, 실함수 계산기 등의 혼자 만들었으리라곤 믿겨지지 않는 기능들이 구현되어있다.

깔끔하고 단순해보이는 외관, 그러나 결코 단순하지 않은 기능들. 회색 메뉴들은 아직 추가되지 기능이지만 개발은 대부분 되어있는 상태라고 한다.
10여년에 걸친 알고리즘 개발
matheToy에서 수론 파트(정수 계산 프로그램)는 1996년에 Dos상에서 완료된 알고리즘을 그대로 가져다 쓰고 있고,
행렬 프로그램은 1995년, 다항식 계산 프로그램은 2003년, 2D, 3D 그래프는 2004년, 실함수 계산기는 2005년 각각 완성된 것입니다.
…
그외에 메타 알고리즘의 시도로서, 메타 논리 언어를 통한 수학적 알고리즘 구성에 대해 개발하고 있습니다.
- Byedodo Public Center, Mathe Toy 소개페이지
오랜 시간동안 개발된 만큼 연산이 빠르고 안정적인 것을 알 수 있다.
프로그램 개발자 Byedodo님은 그저 수학을 많이 좋아해서, 수학 연구용으로 쓰려고 제작했는데 혼자만 쓰는것은 낭비라고 생각해 배포를 시작했다고 한다.
Byedodo님의 홈페이지에는 Mathe Toy 뿐만 아니라 다른 많은 실험적인 프로그램들이 제공되고 있으며 모두 무료로 다운받을 수 있다.
2D,3D 그래프 (2/3D Graph)

2D,3D 그래프를 그려낸다. 3D그래프도 DirectX 대신 자체엔진을 사용했기 때문에 끝없이 확대할 수 있다.
3D 그래프를 그릴때 랜더링이 느릴경우엔 점 찍는 거리를 조절할 수 있다.
다만 아쉬운점은 실시간 랜더링이 안된다는 점이다. 따라서 확대나 회전 등 랜더링 설정을 변경할 때 마다 재 랜더링 시간을 필요로 한다.

그래프 설정
위 그림에서 각각 확대, 점 찍는 간격, 면의 투명도, 시야 거리 설정을 의미한다.
아래에 있는 작은 그래프 모형을 마우스로 클릭 후 움직이면 3D 그래프를 회전시킬 수 있다.
Ok를 눌러야만 새로운 설정으로 다시 랜더링한다.
정수 계산 (Integer Calculator)

거대 정수 연산
10
30,000 을 0.1초 이내에 자리수 빠짐없이 계산할 수 있는 거대 정수 연산기능. Sqr(루트)나 Gcd,Lcm(최대,최소공배수)등의 간단한 연산함수에서 Euler(오일러 함수)같은 복잡한
(알수없는;;) 함수 연산도 가능하다.
오른쪽엔 진행현황 바들이 나와 연산 흐름이 시각화되어있다.
- 연산 순서
()연산 최상위
Sigma, Multi, Max, Min 등 집합 원소 계산 다음
SetCalc[X] 다음
{} 연산 다음(집합 내 집합, 합집합, 교집합)
SetPrime 등 집합 호출 함수 다음
Euler, Factorial 등 반복 함수 다음
^, @ 등 지수 함수 다음
곱셈 나눗셈
다항식 계산 (Polynomial Calculator)

다항식 계산기는 복잡한 수식을 간단하게 풀어준다.
예전에 기하 프로그램을 개발할때 원위점 을 구하는 식을 만들려고 복잡하게 풀어낸 적이 있었는데 ‘그때 이런 프로그램을 알았다면..’ 하는 생각이 든다.
[#M_그때에 삽질했던 기록|오마이갓~|
직선 y= a'x+ b' - 마우스좌표와 원의 중심을 잇는 직선
a=원의 중심점의 x좌표, b=원의 중심점의 y좌표
a'=선의 기울기, b'=선의 y절편
r=원의 반지름
(x-a)^2+(y-b)^2=r^2
↓
(x-a)^2+(a'x+b'+b)^2=r^2
<y=a'x+b'>
↓
x^2-2ax+a^2+(a'x)^2+(b')^2+(-b)^2+2(a'b'x+bb'+(-a'bx))=r^2
↓
(a'^2+1)x^2+2(-a+a'b'-a'b)x+(a^2+b^2+b'^2+2bb'-r^2)=0
------- -------------- ----------------------
a b c
원이므로
b^2-4ac<0 경우 X
b^2-4ac==0 경우 X
_________
-b±√b^2-4ac
---------------- => 2개의 해 (무조건 실수)
2a
_M#]
실수 계산 (Real Number Calculator)

실수계산
24가지의 삼각함수, 그외의 6가지 함수와 π(파이), e(오일러수)를 쓸 수 있다. 실수 계산기이므로 범위는 무조건 실수이다. 따라서 Sqr(-1)같은 값은 0 으로 반환된다.
소수처리는 대략 14자리까지 되는것으로 보인다.
행렬 (Matrix)

행렬계산. 행렬 A B를 입력한후 계산식을 쓴 후 실행하면 연산된다.
끝
현재 각분야에 사용되는 수학 프로그램은 주로 Mathematica(메스메티카), Maple(메이플) 등인데 모두 외국산 프로그램인데다가 너무 전문적이라 사용법이 쉽지 않다.
Mathe Toy는 비교적 직관적인 인터페이스를 지니고 있으며 사용성에서도 위 두 프로그램들에 비교하면 매우 간단하다.
기능면에서는 부족한것이 사실이지만 전문적인 용도가 아닌 교육용 또는 매우복잡하진 않은 연산을 목적으로 한다면 Mathe Toy는 괜찮은 프로그램이라 생각된다.
http://www.byedodo.com/