^:(キャレットコロン、パワー、繰り返し)接続詞の機能は^(キャレット、べき乗)関数と似ていると言えます。左側の動詞を右側の引数回数繰り返します。
]a=: 10^ b=: i.5 1 10 100 1000 10000 b 0 1 2 3 4 %:a 1 3.16228 10 31.6228 100 %: %: a 1 1.77828 3.16228 5.62341 10 %: ^: 2 a 1 1.77828 3.16228 5.62341 10 %: ^: 3 a 1 1.33352 1.77828 2.37137 3.16228 %: ^: b a 1 10 100 1000 10000 1 3.16228 10 31.6228 100 1 1.77828 3.16228 5.62341 10 1 1.33352 1.77828 2.37137 3.16228 1 1.15478 1.33352 1.53993 1.77828 (cos=: 2&o.) ^: b d=:1 1 0.540302 0.857553 0.65429 0.79348 ] y=: cos ^: _ d 0.739085 y=cos y 1
動詞cosを続けて作用すると、ある値に収斂します。無限に繰り返したときの結果(cos ^: _)がこの収斂値です。
^:(キャレットコロン、パワー、繰り返し)接続詞の右側引数を負の値_1にすると、左側引数の動詞の逆関数になります。
%: ^: _1 b 0 1 4 9 16 *: b 0 1 4 9 16 %: ^: (-b) b 0 1 2 3 4 0 1 4 9 16 0 1 16 81 256 0 1 256 6561 65536 0 1 65536 4.30467e7 4.29497e9
演習:
11.1 二乗の関数*:(ほしコロン、アスタリスクコロン)は二乗根関数%:(パーセントコロン、ルート)の逆関数である。したがって%:^:_1は*:と同等の関数である。ボキャブラリーの中に同じような関係にある原始動詞を探し、実験せよ。
^ i.5 NB.^(キャレット、べき乗)は^.(ログ)の逆関数 1 2.71828 7.38906 20.0855 54.5982 ^. i.5 __ 0 0.693147 1.09861 1.38629 (^ ^:_1) i.5 __ 0 0.693147 1.09861 1.38629 (^. ^:_1) i.5 1 2.71828 7.38906 20.0855 54.5982 10&^ i.5 1 10 100 1000 10000 10&^. i.5 __ 0 0.30103 0.477121 0.60206 (10&^ ^:_1) i.5 __ 0 0.30103 0.477121 0.60206 (10&^. ^:_1) i.5 1 10 100 1000 10000