trig_basic : THEORY %----------------------------------------------------------------------------- % trig_basic: % ----------- % - definition of pi with crude upper and lower bounds % - definition of sin, cos, and tan % - pythagorean properties: sq(sin(a)) + sq(cos(a)) = 1 % - sum and difference of two angles % - double angle formulas % - negative properties, e.g. sin(-a) % - periodicity, e.g. sin(a) = sin(a + 2 * j * pi) % - co-function identities, e.g. sin(pi/2 - a) = cos(a) % - location of zeros of trig functions % % Version 1.1 27/10/03 Foundational Version David Lester % % CHANGES % - Oct 21 2004 (C. Munoz) Moved pi_lb, pi_ub, pi_bound to atan_approx % %----------------------------------------------------------------------------- BEGIN
IMPORTING reals@sqrt, sincos_def, atan_approx
a,b,c,d : VAR real
nnc : VAR nonneg_real
j : VAR integer
% This is now in atan_approx.pvs % % pi_lb : real = 31415926/10000000 % % pi_ub : real = 31415927/10000000 % % pi_bound : JUDGEMENT pi HAS_TYPE {r:posreal | pi_lb < r AND r < pi_ub}
% -------------------- definition of sin and cos -------------------- % % This is now in sincos_def.pvs % % trig_range : TYPE = {a | -1 <= a AND a <= 1} % % sin(x:real) : real = sin_phase(x-2*pi*floor(x/(2*pi))) % cos(x:real) : real = cos_phase(x-2*pi*floor(x/(2*pi))) % % sin_range_ax: LEMMA -1 <= sin(a) AND sin(a) <= 1 % cos_range_ax: LEMMA -1 <= cos(a) AND cos(a) <= 1 % % sin_range : JUDGEMENT sin(a) HAS_TYPE trig_range % cos_range : JUDGEMENT cos(a) HAS_TYPE trig_range % % Tan?(a) : bool = cos(a) /= 0 % % tan(a:(Tan?)) : real = sin(a)/cos(a)
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung ist noch experimentell.