자연수의 벡터에서 최대 값을 찾고 싶습니다. 그러나 벡터 (즉, 'vec')는 집합 또는 목록과 다른 유형입니다. 나는 vec의 유형이나 재귀 함수의 정의를 높이거나 들어 올리는 것과 같이 작동하지 않는 몇 가지 아이디어를 생각했습니다.이사벨 : 벡터의 최대 값
벡터에서 최대 값을 얻기 위해 어떤 해결책을 제안합니까?
(*
IMPORTS:
"~~/src/HOL/Algebra/Ring"
"~~/src/HOL/Library/Numeral_Type"
"~~/src/HOL/Library/Permutations"
"~~/src/HOL/Library/Polynomial"
"~~/src/HOL/Big_Operators"
vec (VECTOR) is from Finite_Cartesian_Product
degree is from Polynomial
Max is from Big_Operators
*)
(* The problem is that "Max" from Big_Operators is not working on vectors! *)
definition maxdeg:: "('a::zero poly)^'n ⇒ nat" where "maxdeg v = Max(χ i . degree(v$i))"