41 lines
1.4 KiB
Markdown
41 lines
1.4 KiB
Markdown
[linalg.reqs.val]
|
||
|
||
# 29 Numerics library [[numerics]](./#numerics)
|
||
|
||
## 29.9 Basic linear algebra algorithms [[linalg]](linalg#reqs.val)
|
||
|
||
### 29.9.4 Requirements [[linalg.reqs]](linalg.reqs#val)
|
||
|
||
#### 29.9.4.1 Linear algebra value types [linalg.reqs.val]
|
||
|
||
[1](#1)
|
||
|
||
[#](http://github.com/Eelis/draft/tree/9adde4bc1c62ec234483e63ea3b70a59724c745a/source/numerics.tex#L11788)
|
||
|
||
Throughout [[linalg]](linalg "29.9 Basic linear algebra algorithms"),
|
||
the following types are[*linear algebra value types*](#def:value_type,linear_algebra "29.9.4.1 Linear algebra value types [linalg.reqs.val]"):
|
||
|
||
- [(1.1)](#1.1)
|
||
|
||
the value_type type alias of
|
||
any input or output mdspan parameter(s) of
|
||
any function in [[linalg]](linalg "29.9 Basic linear algebra algorithms"); and
|
||
|
||
- [(1.2)](#1.2)
|
||
|
||
the Scalar template parameter (if any) of
|
||
any function or class in [[linalg]](linalg "29.9 Basic linear algebra algorithms")[.](#1.sentence-1)
|
||
|
||
[2](#2)
|
||
|
||
[#](http://github.com/Eelis/draft/tree/9adde4bc1c62ec234483e63ea3b70a59724c745a/source/numerics.tex#L11802)
|
||
|
||
Linear algebra value types shall model [semiregular](concepts.object#concept:semiregular "18.6 Object concepts [concepts.object]")[.](#2.sentence-1)
|
||
|
||
[3](#3)
|
||
|
||
[#](http://github.com/Eelis/draft/tree/9adde4bc1c62ec234483e63ea3b70a59724c745a/source/numerics.tex#L11805)
|
||
|
||
A value-initialized object of linear algebra value type
|
||
shall act as the additive identity[.](#3.sentence-1)
|