J: 포크

J: 포크 (Intro 5)

J 입문 5장에서는 세 동사의 고립된 수열인 포크(fork)의 단항·이항 정의와 뚜껑(cap) [:의 용법을 설명해요.

출처: 문서

본문

위에서 보여주듯, 세 동사의 고립된 수열을 포크(fork)라고 불러요. 그 단항과 이항 경우는 다음과 같이 정의돼요:

단항 (monadic):

  g
 / \
f   h
|   |
y   y

이항 (dyadic):

  g
 / \
f   h

/ \ /
x y x y

위의 도식들은 포크의 시각적 이미지를 제공해요.

오른쪽의 주석을 읽기 전에(%:이 근(root) 함수를, ]이 항등(identity) 함수를 나타낸다는 사실을 이용하면서) 다음 각 문장의 의미를 영어로 말해 보세요:


   a=: 8 7 6 5 4 3
   b=: 4 5 6 7 8 9
   2 %: b                     Square root of b
2 2.23607 2.44949 2.64575 2.82843 3

   3 %: b                     Cube root of b
1.5874 1.70998 1.81712 1.91293 2 2.08008

   (+/ % #) b                 Arithmetic mean or average
6.5

   (# %: */) b                Geometric mean
6.26521

   (] - (+/ % #)) b           Centre on mean (two forks)
_2.5 _1.5 _0.5 0.5 1.5 2.5

   (] - +/ % #) b             Two forks (fewer parentheses)
_2.5 _1.5 _0.5 0.5 1.5 2.5

   a (+ * -) b                Dyadic case of fork
48 24 0 _24 _48 _72

   (a^2)-(b^2)
48 24 0 _24 _48 _72

   a (< +. =) b               Less than or equal
0 0 1 1 1 1

   a<b
0 0 0 1 1 1

   a=b
0 0 1 0 0 0

   a (<: = < +. =) b          A tautology (<: is less than or equal)
1 1 1 1 1 1

   2 ([: ^ -) 0 1 2           Cap yields monadic case
7.38906 2.71828 1

   evens=: [: +: i.           +: is double
   evens 7
0 2 4 6 8 10 12

   odds=: [: >: evens         >: is increment
   odds 7
1 3 5 7 9 11 13

이 문장들은 예컨대 산술 평균 (+/ % #), 기하 평균 (# %: */), 평균 중심화 (] - (+/ % #)), 이항 포크 a (+ * -) b(= (a+b)*(a-b) = (a^2)-(b^2)), "작거나 같음" a (< +. =) b, 등치식(tautology) a (<: = < +. =) b, 뚜껑(cap) [: ^ -가 단항 경우를 산출하는 모습, 그리고 [: +: i.(짝수)와 [: >: evens(홀수)를 보여줘요.

연습문제 (Exercises)

5.1

5#3과 유사한 표현을 입력해 이항 #의 정의를 알아내고, 다음 문장의 의미를 말해 보세요:


(# # >./) b=: 2 7 1 8 2

답: b의 최댓값(>./)을 #b번 반복

5.2

오른쪽의 주석을 가리고 각 문장에 대한 자신의 해석을 쓴 다음, 자신의 진술과 오른쪽의 것을 비교해 보세요:


(+/ % #) b                    Mean of b
(# # +/ % #) b                (n=:#b) repetitions of mean
+/(##+/%#) b                  Sum of n means
(+/b)=+/(##+/%#) b            Tautology
(*/b)= */(###%:*/) b          The product over b is the product over n
                              repetitions of the geometric mean of b

더 알아보기 (Learn more)

출처: Intro 5. Forks