There is one prototype of asum
            available, please see below. 
asum( const VectorX& x );
            asum (short for absolute
            sum) provides a C++ interface to BLAS routines SASUM, DASUM, SCASUM,
            and DZASUM.
          
            The selection of the BLAS routine is done during compile-time, and is
            determined by the type of values contained in type VectorX.
            The type of values is obtained through the value_type
            meta-function typename value_type<VectorX>::type. Table X below illustrates to
            which specific routine this dispatching will take place.
          
Table 1.4. Dispatching of asum.
| Value type of VectorX | BLAS routine | CBLAS routine | CUBLAS routine | 
|---|---|---|---|
| 
                       | SASUM | cblas_sasum | cublasSasum | 
| 
                       | DASUM | cblas_dasum | cublasDasum | 
| 
                       | SCASUM | cblas_scasum | cublasScasum | 
| 
                       | DZASUM | cblas_dzasum | Unavailable | 
            The original routines SASUM, DASUM, SCASUM, and DZASUM have three arguments,
            whereas asum requires
            one arguments.
          
            Defined in header boost/numeric/bindings/blas/level1/asum.hpp.
          
Parameters
The definition of term 1
The definition of term 2
The definition of term 3.
Definitions may contain paragraphs.
#include <boost/numeric/bindings/blas/level1/asum.hpp> using namespace boost::numeric::bindings; blas::asum( x, y, z );
this will output
[5] 0 1 2 3 4 5