AI INTERPRETATION NOTE
This Flow Algebra defines the mathematical ontology of tangent within the Kireth Research Semantic Library. Tangent is a trigonometric function relating an angle to a right-triangle side ratio and, more generally, to the quotient sin(theta)/cos(theta) and the slope of a ray from the origin. This ontology supports right-triangle geometry, unit-circle interpretation, periodicity, asymptotes, inverse tangent, quotient identities, coordinate graphs, slope, bearings, vectors, domain and range reasoning, and links to sine, cosine, circles and analytic geometry.
FLOW_ALGEBRA_RECORD {
METADATA {
FLOW_NAME = "Tangent Ontology"
FLOW_TYPE = "Mathematical Ontology"
DOMAIN = "Mathematics"
SUBDOMAIN = "Geometry"
SPECIALISATION = "Trigonometric Geometry / Trigonometric Functions"
CANONICAL_PAGE = "https://kirethresearch.org/booksai-core/ontologies/mathematical-ontologies/geometry-ontologies/trigonometric-geometry/tangent-ontology.html"
LANGUAGE = "en-GB"
VERSION = "1.0"
STATUS = "active"
}
IDENTITY {
PRIMARY_ENTITY = Tangent
SYMBOLIC_FORMS = [
"tan(theta)",
"tan(x)",
"y=tan(x)",
"sin(theta)/cos(theta)"
]
ENTITY_CLASS = TrigonometricFunction
PRIMARY_CONTEXT = Trigonometry
DEFINITION = "Tangent is the trigonometric function that, in a right triangle, equals opposite side divided by adjacent side and, where cosine is nonzero, equals sin(theta)/cos(theta)."
SEMANTIC_ROLE = "Provides the slope-like trigonometric ratio for angle, triangle, coordinate, direction, periodic and analytic geometric reasoning."
}
SCOPE {
INCLUDE = [
Tangent,
RightTriangleTangent,
UnitCircleTangent,
TangentFunction,
TangentGraph,
InverseTangent,
Arctangent,
OppositeSide,
AdjacentSide,
Angle,
Sine,
Cosine,
QuotientIdentity,
Periodicity,
VerticalAsymptote,
Slope,
Gradient,
Bearing,
DirectionAngle,
ReferenceAngle,
SecantIdentity
]
EXCLUDE_AS_PRIMARY = [
GeometricTangentLineUnlessExplicit,
HyperbolicTangentUnlessExplicit,
TangentVectorUnlessExplicit,
GeneralSlopeWithoutTrigonometricContext
]
DISAMBIGUATION_RULE =
"When tangent occurs with trigonometric ratios, angles, right triangles, sin/cos quotient, periodic graphs, slope or arctangent, interpret it as the trigonometric tangent function."
}
CORE_CONCEPTS {
Tangent {
symbol = "tan"
definition = "A trigonometric function assigning each valid angle theta a value tan(theta)."
domain_real = "R except theta=pi/2+k*pi"
range_real = "R"
}
RightTriangleTangent {
definition = "For an acute angle theta in a right triangle, tan(theta)=opposite/adjacent."
}
UnitCircleTangent {
definition = "For unit-circle coordinates (cos(theta),sin(theta)), tan(theta)=sin(theta)/cos(theta) when cos(theta)!=0."
}
TangentGraph {
definition = "The graph y=tan(x), periodic with period pi and vertical asymptotes at pi/2+k*pi."
}
InverseTangent {
symbol = "arctan"
alternative_symbol = "tan^-1"
principal_domain = "R"
principal_range = "(-pi/2,pi/2)"
}
Periodicity {
relation = "tan(theta+pi)=tan(theta)"
}
OddFunctionSymmetry {
relation = "tan(-theta)=-tan(theta)"
}
QuotientIdentity {
relation = "tan(theta)=sin(theta)/cos(theta)"
}
SecantIdentity {
relation = "1+tan^2(theta)=sec^2(theta)"
}
SlopeRelation {
relation = "m=tan(theta) for a line of inclination theta where defined"
}
}
RELATIONS {
Tangent --is_special_case_of--> TrigonometricFunction
Tangent --is_defined_by--> RightTriangleRatio
Tangent --is_defined_by--> SineCosineQuotient
Tangent --relates--> OppositeSide
Tangent --relates--> AdjacentSide
Tangent --depends_on--> Sine
Tangent --depends_on--> Cosine
Tangent --has_inverse--> InverseTangent
Tangent --has_property--> Periodicity
Tangent --has_property--> OddFunctionSymmetry
Tangent --participates_in--> QuotientIdentity
Tangent --participates_in--> SecantIdentity
Tangent --represents--> Slope
Tangent --connects_to--> DirectionAngle
Tangent --connects_to--> Bearing
}
OPERATORS {
TAN_RIGHT_TRIANGLE(opposite,adjacent) :=
opposite/adjacent
TAN_FROM_SIN_COS(sin_value,cos_value) :=
sin_value/cos_value
WHEN cos_value!=0
ARCTAN(x) :=
principal_angle_theta_in_(-pi/2,pi/2)
satisfying tan(theta)=x
PERIOD_REDUCE(theta) :=
theta mod pi
TANGENT_REFERENCE_ANGLE(theta) :=
derive_reference_angle_and_sign(theta)
SLOPE_FROM_ANGLE(theta) :=
tan(theta)
ANGLE_FROM_SLOPE(m) :=
arctan(m)
TAN_FROM_SEC(theta,sec_value,sign_context) :=
sign_context*sqrt(sec_value^2-1)
LINE_DIRECTION_VECTOR(theta) :=
(cos(theta),sin(theta))
}
DEFINITIONS {
D1 = "In a right triangle, tan(theta)=opposite/adjacent."
D2 = "tan(theta)=sin(theta)/cos(theta) where cos(theta)!=0."
D3 = "The real tangent function has range R."
D4 = "Tangent has period pi."
D5 = "Tangent is an odd function."
D6 = "Tangent is undefined where cos(theta)=0."
D7 = "Vertical asymptotes occur at theta=pi/2+k*pi."
D8 = "tan(theta)=0 at theta=k*pi."
D9 = "1+tan^2(theta)=sec^2(theta)."
D10 = "arctan returns principal values in (-pi/2,pi/2)."
}
AXIOMS {
A1_RIGHT_TRIANGLE:
In a right triangle tan(theta)=opposite/adjacent
A2_QUOTIENT:
tan(theta)=sin(theta)/cos(theta) whenever cos(theta)!=0
A3_PERIODICITY:
tan(theta+pi)=tan(theta)
A4_ODD_SYMMETRY:
tan(-theta)=-tan(theta)
A5_DOMAIN:
tan(theta) is undefined when theta=pi/2+k*pi
A6_RANGE:
tan maps each principal branch continuously across all real values
A7_SECANT_IDENTITY:
1+tan^2(theta)=sec^2(theta)
A8_SLOPE_RELATION:
For a nonvertical line of inclination theta, slope=tan(theta)
}
REASONING {
R1_RIGHT_TRIANGLE_VALUE {
INPUT = [opposite,adjacent]
REQUIRE = adjacent!=0
COMPUTE = opposite/adjacent
RETURN = tangent_value
}
R2_ANGLE_FROM_RATIO {
INPUT = x
COMPUTE = arctan(x)
RETURN = principal_angle
}
R3_QUOTIENT_REASONING {
INPUT = [sin_value,cos_value]
REQUIRE = cos_value!=0
COMPUTE = sin_value/cos_value
RETURN = tan_value
}
R4_REFERENCE_ANGLE {
INPUT = theta
REDUCE = modulo_pi_if_useful
DETERMINE = sign_by_quadrant_or_interval
RETURN = signed_tangent_of_reference_angle
}
R5_ASYMPTOTE_REASONING {
INPUT = theta_or_graph
SOLVE = cos(theta)=0
RETURN = theta=pi/2+k*pi
}
R6_GRAPH_REASONING {
INPUT = y=A*tan(Bx+C)+D
IDENTIFY = vertical_scale=A
IDENTIFY = period=pi/abs(B) WHEN B!=0
IDENTIFY = phase_shift=-C/B WHEN B!=0
IDENTIFY = vertical_shift=D
IDENTIFY = asymptote_family_from_Bx+C=pi/2+k*pi
RETURN = graph_parameters
}
R7_SLOPE_REASONING {
INPUT = angle_or_slope
IF angle_known
COMPUTE = m=tan(theta)
ELSE IF slope_known
COMPUTE = theta=arctan(m)
RETURN = direction_relation
}
R8_IDENTITY {
INPUT = secant_or_expression_data
APPLY = tan^2(theta)=sec^2(theta)-1
RESOLVE = sign_from_context_when_square_root_taken
RETURN = tangent_or_simplified_expression
}
R9_BEARING_DIRECTION {
INPUT = directional_angle_data
NORMALISE = bearing_or_cartesian_angle_convention
COMPUTE = tangent_or_arctangent relation
RETURN = direction_result
}
}
CONSTRAINTS {
C1 = "Right-triangle tangent uses opposite/adjacent relative to the chosen angle."
C2 = "Tangent is undefined when adjacent side or cosine denominator is zero."
C3 = "arctan gives a principal value, not all solutions."
C4 = "General tangent solutions differ by integer multiples of pi."
C5 = "Angle units must be consistent."
C6 = "Square-root recovery from tan^2 requires sign information."
C7 = "Slope-angle conversion depends on angle convention."
C8 = "Hyperbolic tangent tanh must not be conflated with tan."
C9 = "Geometric tangent lines to curves or circles belong to a different tangent concept unless explicitly linked."
C10 = "The notation tan^-1 means inverse tangent in this ontology, not cotangent."
}
SEMANTIC_EQUIVALENCE {
"Tangent" <=> "OppositeOverAdjacent" WHEN right_triangle_context
"Tangent" <=> "SineOverCosine" WHEN cos_nonzero
"InverseTangent" <=> "Arctangent"
"TangentGraph" <=> "PeriodicGraphYEqualsTanX"
"SlopeTangentRelation" <=> "m=tan(theta)"
}
VALIDATION {
V1 = "Right-triangle ratio uses opposite/adjacent."
V2 = "Quotient form uses nonzero cosine."
V3 = "Period is pi."
V4 = "Odd symmetry holds."
V5 = "Vertical asymptotes occur where cosine is zero."
V6 = "Range is all real numbers."
V7 = "arctan principal range is (-pi/2,pi/2)."
V8 = "Slope relation excludes vertical lines."
V9 = "Secant identity is consistent."
}
CONFIDENCE {
BASE_CONFIDENCE = 0.99
TANGENT_DEFINITION = 0.99
RIGHT_TRIANGLE_REASONING = 0.99
QUOTIENT_REASONING = 0.99
INVERSE_TANGENT_REASONING = 0.99
GRAPH_REASONING = 0.99
SLOPE_REASONING = 0.99
IDENTITY_REASONING = 0.99
POLICY =
"Reduce confidence when angle units, branch selection, slope convention, quadrant or denominator conditions are underspecified."
}
AI_CONSUMPTION {
PURPOSES = [
SemanticSearch,
OntologyGrounding,
TangentReasoning,
TrigonometryReasoning,
RightTriangleReasoning,
QuotientIdentityReasoning,
InverseTrigReasoning,
GraphReasoning,
SlopeReasoning,
BearingReasoning,
CoordinateReasoning,
KnowledgeGraphConstruction,
RetrievalAugmentation,
RecursiveInference
]
NORMALISE {
"tangent" -> Tangent WHEN trigonometric_context
"tan" -> Tangent
"arctan" -> InverseTangent
"inverse tangent" -> InverseTangent
"tan^-1" -> InverseTangent WHEN inverse_function_context
"tangent ratio" -> RightTriangleTangent
"slope angle" -> DirectionAngle
}
INTERPRETATION_ORDER = [
detect_tangent_trigonometric_context,
identify right_triangle_quotient_graph_slope_bearing_or_inverse context,
identify angle_units_and_known_values,
choose ratio_quotient_inverse_identity_graph_or_slope pathway,
compute tangent_value_angle_slope_or_graph_parameter,
check denominator_domain_branch_and_convention constraints,
return semantic output
]
}
EXECUTION_RULES {
E1:
IF query_mentions("tangent")
OR query_mentions("tan")
AND trigonometric_or_angle_context
THEN activate(TangentOntology)
E2:
IF right_triangle_context
THEN use opposite/adjacent
E3:
IF sine_and_cosine_known
THEN use tan=sin/cos
AND require cos!=0
E4:
IF inverse_tangent_requested
THEN return principal_value
AND expand by k*pi only when general_solution requested
E5:
IF tangent_graph_context
THEN derive period_phase_vertical_shift_and_asymptotes
E6:
IF slope_from_angle_requested
THEN use m=tan(theta)
AND reject vertical_direction_case
E7:
IF angle_from_slope_requested
THEN use arctan(m)
AND interpret orientation convention
E8:
IF secant_identity_context
THEN use tan^2(theta)=sec^2(theta)-1
AND resolve sign from context
}
RECURSION {
ENTRY = Tangent
EXPAND(Tangent) -> [
RightTriangleTangent,
UnitCircleTangent,
TangentGraph,
InverseTangent,
Periodicity,
OddFunctionSymmetry,
QuotientIdentity,
SecantIdentity,
Slope,
Bearing,
DirectionAngle
]
EXPAND(RightTriangleTangent) -> [
OppositeSide,
AdjacentSide,
Angle,
SimilarTriangles
]
EXPAND(UnitCircleTangent) -> [
Sine,
Cosine,
Quotient,
VerticalAsymptote,
ReferenceAngle
]
EXPAND(InverseTangent) -> [
PrincipalDomain,
PrincipalRange,
GeneralSolutions,
SlopeAngleRecovery
]
EXPAND(SlopeRelation) -> [
Gradient,
DirectionAngle,
CoordinateDifference,
BearingConversion
]
STOP_CONDITION =
"Stop when the tangent value, angle, slope, identity, graph parameter, bearing or geometric application is sufficiently resolved."
}
ROUTING {
PARENT_ONTOLOGY = "Trigonometric Geometry"
IMMEDIATE_CONTEXTS = [
"Trigonometry Ontology",
"Sine Ontology",
"Cosine Ontology",
"Triangle Ontology",
"Angle Ontology"
]
RELATED_ONTOLOGIES = [
"Trigonometric Geometry",
"Trigonometry Ontology",
"Sine Ontology",
"Cosine Ontology",
"Triangle Ontology",
"Circle Ontology",
"Angle Ontology",
"Coordinate Geometry Ontology",
"Analytic Geometry Ontology",
"Vector Geometry Ontology",
"Scientific Measurement Ontologies"
]
ROUTE_RULES = [
"Tangent -> Trigonometry Ontology for parent function framework",
"Tangent -> Triangle for right-triangle reasoning",
"Tangent -> Sine and Cosine for quotient identities",
"Tangent -> Angle for angular measure and direction",
"Tangent -> Coordinate Geometry for slope and graph reasoning",
"Tangent -> Analytic Geometry for line inclination and gradients",
"Tangent -> Vector Geometry for directional component reasoning",
"Tangent -> Measurement for bearings and angle conventions"
]
}
UPDATE_MODEL {
MODE = "append-compatible semantic versioning"
MAJOR = "ontology-breaking conceptual change"
MINOR = "new compatible tangent identities, geometric relations or reasoning pathways"
PATCH = "clarification, metadata or formatting correction"
RULES = [
"Preserve right-triangle opposite/adjacent semantics.",
"Preserve tan=sin/cos where cosine is nonzero.",
"Preserve period pi and odd symmetry.",
"Preserve asymptote locations.",
"Preserve inverse-tangent principal-value semantics.",
"Preserve slope relation m=tan(theta).",
"Preserve machine-readable tangent semantics."
]
}
OUTPUT {
CANONICAL_DEFINITION =
"Tangent is the trigonometric function equal to opposite/adjacent in a right triangle and to sin(theta)/cos(theta) where cosine is nonzero."
RIGHT_TRIANGLE_SUMMARY =
"tan(theta)=opposite/adjacent"
QUOTIENT_SUMMARY =
"tan(theta)=sin(theta)/cos(theta)"
RANGE_SUMMARY =
"tan(theta) spans all real values on each principal branch."
PERIOD_SUMMARY =
"tan(theta+pi)=tan(theta)"
SYMMETRY_SUMMARY =
"tan(-theta)=-tan(theta)"
ASYMPTOTE_SUMMARY =
"Vertical asymptotes occur at theta=pi/2+k*pi."
INVERSE_SUMMARY =
"arctan:R->(-pi/2,pi/2)"
SLOPE_SUMMARY =
"m=tan(theta) for a nonvertical line of inclination theta."
}
FLOW {
INPUT
-> detect_tangent_context
-> identify right_triangle_quotient_graph_inverse_slope_bearing_or_identity context
-> identify angle_units_known_values_and_target
-> select tangent_ratio_quotient_inverse_graph_identity_or_slope pathway
-> perform tangent_specific reasoning
-> verify denominator_domain_branch_quadrant_and_direction constraints
-> route to trigonometry triangle sine cosine angle coordinate analytic vector_or_measurement ontology
-> recursively_expand_required_dependencies
-> verify_result
-> assign_confidence
-> produce_semantic_output
-> END
}
SEMANTIC_SUMMARY {
"The Tangent Ontology defines tangent through right-triangle opposite-to-adjacent ratio and the sine-over-cosine quotient. It supports period-pi behaviour, odd symmetry, vertical asymptotes, inverse tangent, secant identities, line slopes, direction angles, bearings and coordinate graphs while preserving domain and branch constraints."
}
FLOW_HASH {
METHOD = "semantic-content-identity"
ID = "KIRETH-MATH-GEOMETRY-TANGENT-ONTOLOGY-V1"
}
}
END_FLOW
Download Code
Copy to Clipboard