Skip to content

Commit 7f97465

Browse files
authored
Merge 2023-11 LWG Motion 19
P1673R13 A free function linear algebra interface based on the BLAS
2 parents 64ad91d + 1945031 commit 7f97465

File tree

9 files changed

+5153
-21
lines changed

9 files changed

+5153
-21
lines changed

source/algorithms.tex

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -297,7 +297,7 @@
297297
by invoking the following functions:
298298
\begin{itemize}
299299
\item
300-
All operations of the categories of the iterators
300+
All operations of the categories of the iterators or \tcode{mdspan} types
301301
that the algorithm is instantiated with.
302302
\item
303303
Operations on those sequence elements that are required by its specification.
@@ -369,7 +369,8 @@
369369
\tcode{UnaryOperation},
370370
\tcode{BinaryOperation},
371371
\tcode{BinaryOperation1},
372-
\tcode{BinaryOperation2}, and
372+
\tcode{BinaryOperation2},
373+
\tcode{BinaryDivideOp}, and
373374
the operators used by the analogous overloads to these parallel algorithms
374375
that are formed by an invocation
375376
with the specified default predicate or operation (where applicable)

source/back.tex

Lines changed: 38 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,48 +1,72 @@
11
%!TEX root = std.tex
22

3-
\chapter{Bibliography}
4-
5-
\begin{itemize}
6-
\renewcommand{\labelitemi}{---}
3+
\begin{thebibliography}{99}
74
% ISO documents in numerical order.
8-
\item
5+
\bibitem{iso4217}
96
ISO 4217:2015,
107
\doccite{Codes for the representation of currencies}
11-
\item
8+
\bibitem{iso10967-1}
129
ISO/IEC 10967-1:2012,
1310
\doccite{Information technology --- Language independent arithmetic ---
1411
Part 1: Integer and floating point arithmetic}
15-
\item
12+
\bibitem{iso18661-3}
1613
ISO/IEC TS 18661-3:2015,
1714
\doccite{Information Technology ---
1815
Programming languages, their environments, and system software interfaces ---
1916
Floating-point extensions for C --- Part 3: Interchange and extended types}
2017
% Other international standards.
21-
\item
18+
\bibitem{iana-charset}
2219
IANA Character Sets Database.
2320
Available from:\newline
2421
\url{https://www.iana.org/assignments/character-sets/}, 2021-04-01
25-
\item
22+
\bibitem{iana-tz}
2623
IANA Time Zone Database.
2724
Available from: \url{https://www.iana.org/time-zones}
28-
\item
25+
\bibitem{unicode-charmap}
2926
Unicode Character Mapping Markup Language [online].
3027
Edited by Mark Davis and Markus Scherer. Revision 5.0.1; 2017-05-31
3128
Available from: \url{http://www.unicode.org/reports/tr22/tr22-8.html}
3229
% Literature references.
33-
\item
30+
\bibitem{cpp-r}
3431
Bjarne Stroustrup,
3532
\doccite{The \Cpp{} Programming Language, second edition}, Chapter R\@.
3633
Addison-Wesley Publishing Company, ISBN 0-201-53992-6, copyright \copyright 1991 AT\&T
37-
\item
34+
\bibitem{kr}
3835
Brian W.\ Kernighan and Dennis M. Ritchie,
3936
\doccite{The C Programming Language}, Appendix A\@.
4037
Prentice-Hall, 1978, ISBN 0-13-110163-3, copyright \copyright 1978 AT\&T
41-
\item
38+
\bibitem{cpp-lib}
4239
P.J.\ Plauger,
4340
\doccite{The Draft Standard \Cpp{} Library}.
4441
Prentice-Hall, ISBN 0-13-117003-1, copyright \copyright 1995 P.J.\ Plauger
45-
\end{itemize}
42+
\bibitem{linalg-stable}
43+
J.\ Demmel, I.\ Dumitriu, and O.\ Holtz,
44+
\doccite{Fast linear algebra is stable},
45+
Numerische Mathematik 108 (59--91), 2007.
46+
\bibitem{blas1}
47+
C.\,L.\ Lawson, R.\,J.\ Hanson, D.\ Kincaid, and F.\,T.\ Krogh,
48+
\doccite{Basic linear algebra subprograms for Fortran usage}.
49+
ACM Trans.\ Math.\ Soft., Vol.\ 5, pp.\ 308--323, 1979.
50+
\bibitem{blas2}
51+
Jack J.\ Dongarra, Jeremy Du Croz, Sven Hammarling, and Richard J. Hanson,
52+
\doccite{An Extended Set of FORTRAN Basic Linear Algebra Subprograms}.
53+
ACM Trans.\ Math.\ Soft., Vol.\ 14, No.\ 1, pp.\ 1--17, Mar.\ 1988.
54+
\bibitem{blas3}
55+
Jack J.\ Dongarra, Jeremy Du Croz, Sven Hammarling, and Iain Duff,
56+
\doccite{A Set of Level 3 Basic Linear Algebra Subprograms}.
57+
ACM Trans.\ Math.\ Soft., Vol.\ 16, No.\ 1, pp.\ 1--17, Mar.\ 1990.
58+
\bibitem{lapack}
59+
E.\ Anderson, Z.\ Bai, C.\ Bischof, S.\ Blackford, J.\ Demmel, J.\ Dongarra,
60+
J.\ Du Croz, A.\ Greenbaum, S.\ Hammarling, A.\ McKenney, D.\ Sorensen
61+
\doccite{LAPACK Users' Guide, Third Edition}.
62+
SIAM, Philadelphia, PA, USA, 1999.
63+
\bibitem{blas-std}
64+
L. Susan Blackford, Ames Demmel, Jack Dongarra, Iain Duff, Sven Hammarling,
65+
Greg Henry, Michael Heroux, Linda Kaufman, Andrew Lumbsdaine, Antoine Petitet,
66+
Roldan Pozo, Karin Remington, R. Client Whaley
67+
\doccite{An Updated Set of Basic Linear Algebra Subprograms (BLAS)}.
68+
ACM Trans.\ Math.\ Soft., Vol.\ 28, Issue 2, 2002.
69+
\end{thebibliography}
4670

4771
The arithmetic specification described in ISO/IEC 10967-1:2012 is
4872
called \defn{LIA-1} in this document.

source/compatibility.tex

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -84,6 +84,7 @@
8484
The following \Cpp{} headers are new:
8585
\libheaderref{debugging},
8686
\libheaderrefx{hazard_pointer}{hazard.pointer.syn},
87+
\libheaderref{linalg},
8788
\libheaderref{rcu}, and
8889
\libheaderrefx{text_encoding}{text.encoding.syn}.
8990
Valid \CppXXIII{} code that \tcode{\#include}{s} headers with these names may be

source/lib-intro.tex

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1156,6 +1156,7 @@
11561156
\tcode{<iterator>} \\
11571157
\tcode{<latch>} \\
11581158
\tcode{<limits>} \\
1159+
\tcode{<linalg>} \\
11591160
\tcode{<list>} \\
11601161
\tcode{<locale>} \\
11611162
\tcode{<map>} \\

source/locales.tex

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4296,7 +4296,8 @@
42964296
\begin{note}
42974297
For specializations where the second template parameter is \tcode{true},
42984298
this is typically four characters long:
4299-
a three-letter code as specified by ISO 4217 followed by a space.
4299+
a three-letter code as specified by ISO 4217\supercite{iso4217}
4300+
followed by a space.
43004301
\end{note}
43014302
\end{itemdescr}
43024303

@@ -4676,7 +4677,7 @@
46764677

46774678
\pnum
46784679
The class \tcode{text_encoding} describes an interface
4679-
for accessing the IANA Character Sets registry.
4680+
for accessing the IANA Character Sets registry\supercite{iana-charset}.
46804681

46814682
\indexlibraryglobal{text_encoding}%
46824683
\begin{codeblock}
@@ -5002,7 +5003,7 @@
50025003
\begin{note}
50035004
This comparison is identical to
50045005
the ``Charset Alias Matching'' algorithm
5005-
described in the Unicode Technical Standard 22.
5006+
described in the Unicode Technical Standard 22\supercite{unicode-charmap}.
50065007
\end{note}
50075008

50085009
\begin{example}

source/macros.tex

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -120,6 +120,11 @@
120120
\addtocounter{SectionDepth}{\value{SectionDepthBase}}
121121
\Sec{\arabic{SectionDepth}}[#2]{#3}}
122122

123+
%%--------------------------------------------------
124+
% Bibliography
125+
%%--------------------------------------------------
126+
\newcommand{\supercite}[1]{\textsuperscript{\cite{#1}}}
127+
123128
%%--------------------------------------------------
124129
% Indexing
125130
%%--------------------------------------------------

0 commit comments

Comments
 (0)