There is one prototype of gghrd
            available, please see below. 
gghrd( const char compq, const char compz, const int_t ilo, MatrixA& a, MatrixB& b, MatrixQ& q, MatrixZ& z );
            gghrd (short for $FRIENDLY_NAME)
            provides a C++ interface to LAPACK routines SGGHRD, DGGHRD, CGGHRD, and
            ZGGHRD. gghrd reduces
            a pair of complex matrices (A,B) to generalized upper Hessenberg form
            using unitary transformations, where A is a general matrix and B is upper
            triangular. The form of the generalized eigenvalue problem is A*x = lambda*B*x,
            and B is typically made upper triangular by computing its QR factorization
            and moving the unitary matrix Q to the left side of the equation.
          
This subroutine simultaneously reduces A to a Hessenberg matrix H: Q**HA*Z = H and transforms B to another upper triangular matrix T: Q*H*B*Z = T in order to reduce the problem to its standard form H*y = lambdaT*y where y = Z*H*x.
            The unitary matrices Q and Z are determined as products of Givens rotations.
            They may either be formed explicitly, or they may be postmultiplied into
            input matrices Q1 and Z1, so that Q1 * A * Z1**H = (Q1*Q) * H * (Z1Z)H Q1 * B * Z1*H
            = (Q1*Q) * T * (Z1Z)*H If Q1 is the
            unitary matrix from the QR factorization of B in the original equation
            A*x = lambda*B*x, then gghrd
            reduces the original problem to generalized Hessenberg form.
          
            The selection of the LAPACK routine is done during compile-time, and
            is determined by the type of values contained in type MatrixA.
            The type of values is obtained through the value_type
            meta-function typename value_type<MatrixA>::type. The dispatching table below illustrates
            to which specific routine the code path will be generated.
          
Table 1.332. Dispatching of gghrd
| Value type of MatrixA | LAPACK routine | 
|---|---|
| 
                       | SGGHRD | 
| 
                       | DGGHRD | 
| 
                       | CGGHRD | 
| 
                       | ZGGHRD | 
            Defined in header boost/numeric/bindings/lapack/computational/gghrd.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/lapack/computational/gghrd.hpp> using namespace boost::numeric::bindings; lapack::gghrd( x, y, z );
this will output
[5] 0 1 2 3 4 5