The iht() function is for informative hypothesis testing. The minimal requirement
is a fitted `restriktor()`

object. The remaining options, can be changed to your
personal preferences.

```
iht(object, type = "summary", test = "F", neq.alt = 0,
boot = "no", R = 9999, p.distr = rnorm,
parallel = "no", ncpus = 1L, cl = NULL, seed = 1234,
verbose = FALSE, control = NULL, ...)
```

For example, the syntax might look as follows:

```
iht(restr.ANOVA)
```

**Type A**: Test H0: all restrictions with equalities ("=") active
against HA: at least one inequality restriction (">") strictly true.

**Type B**: Test H0: all restrictions with inequalities (">") (including
some equalities ("=")) active against HA: at least one restriction false (some
equality restrictions may be maintained).

**Type C**: Test H0: at least one restriction false ("<") against HA:
all restrictions strictly true (">"). This test is based on the union-intersection
principle. Note that, this test only makes sense in case of no equality constraints.

**Type global**: equal to Type A but H0 contains additional equality
constraints. This test is analogue to the global F-test in lm, where all coefficients
but the intercept equal 0.

The null-distribution of hypothesis test Type C is based on a t-distribution (one-sided). Its power can be poor in case of many inequality restrictions. Its main role is to prevent wrong conclusions from significant results from hypothesis test Type A.

The exact finite sample distributions of the non-robust F-, score- and LR-test statistics based on restricted OLS estimates and normally distributed errors, are a mixture of F-distributions under the null hypothesis (Wolak, 1987). In agreement with Silvapulle (1992), we found that the results based on these mixtures of F-distributions approximate the tail probabilities of the robust tests better than their asymptotic distributions. Therefore, all p-values for hypothesis test Type "A", "B" and "global" are computed based on mixtures of F-distributions.

Note that, in case of equality constraints only, the null-distribution of the (robust) F-test statistics is based on an F-distribution. The (robust) Wald- and (robust) score-test statistics are based on chi-square distributions.

By default, the iht() function prints an overview of all available hypothesis tests.

```
iht(fit.ANOVA, constraints = myConstraints)
```

```
Restriktor: restricted hypothesis tests ( 14 residual degrees of freedom ):
Multiple R-squared remains 0.985
Constraint matrix:
GroupActive GroupNo GroupPassive op rhs active
1: -1 0 1 >= 0 no
2: 0 1 -1 >= 0 no
Overview of all available hypothesis tests:
Global test: H0: all parameters are restricted to be equal (==)
vs. HA: at least one inequality restriction is strictly true (>)
Test statistic: 5.9780, p-value: 0.02834
Type A test: H0: all restrictions are equalities (==)
vs. HA: at least one inequality restriction is strictly true (>)
Test statistic: 5.9780, p-value: 0.02834
Type B test: H0: all restrictions hold in the population
vs. HA: at least one restriction is violated
Test statistic: 0.0000, p-value: 1
Type C test: H0: at least one restriction is false or active (==)
vs. HA: all restrictions are strictly true (>)
Test statistic: 1.0627, p-value: 0.1529
Note: Type C test is based on a t-distribution (one-sided),
all other tests are based on a mixture of F-distributions.
```

Instead of an overview of all available hypothesis tests, separate hypothesis tests can be obtained, which provide more detailed information, such as the restricted estimates under the null- and alternative-hypothesis. The results for hypothesis test Type A can be requested as follows:

```
iht(fit.ANOVA, constraints = myConstraints, type = "A")
```

By default, the `iht()`

function uses the F-bar test-statistic.
In addition, a likelihood ratio (LR) test and a score-test are available and can
be obtained by adding the argument `test = "score"`

or `"LRT"`

to the `iht()`

function.

```
iht(fit.ANOVA, constraints = myConstraints, type = "A", test = "score")
```

`object:`

an object of class`conLM`

or`conRLM`

.`type:`

hypothesis test type "A", "B", "C", "global", or "summary" (default).`test:`

test statistic; for information about the null-distribution see details.- for objects of class lm; if "F" (default), the F-bar statistic (Silvapulle, 1996) is computed. If "LRT", a likelihood ratio test statistic (Silvapulle and Sen, 2005, chp 3.) is computed. If "score", a one-sided score test statistic (Silvapulle, M.J. and Silvapulle, P., 1995) is computed. Note that, in case of equality constraints only, the usual unconstrained F-, Wald-, LR- and score-test statistic is computed.
- for objects of class rlm; if "F" (default), a robust likelihood ratio type test statistic (Silvapulle, 1992a) is computed. If "Wald", a robust Wald test statistic (Silvapulle, 1996) is computed. If "Wald2", a robust Wald test statistic (Silvapulle, 1992b) is computed. If "score", a one-sided score test statistic (Silvapulle, 1996) is computed. Note that, in case of equality constraints only, unconstrained robust F-, Wald-, score-test statistics are computed.

`neq.alt`

integer: number of equality restrictions that are maintained under the alternative hypothesis (for hypothesis test type "B").`boot:`

the null-distribution of these test-statistics (except under type "C") takes the form of a mixture of F-distributions. The tail probabilities can be computed directly via bootstrapping; if`"parametric"`

, the p-value is computed based on the parametric bootstrap. By default, samples are drawn from a normal distribution with mean zero and variance one. See`p.distr`

for other distributional options. If`"model.based"`

, a model-based bootstrap method is used. Instead of computing the p-value via simulation, the p-value can also be computed using the chi-bar-square weights. If`"no"`

, the p-value is computed based on the weights obtained via simulation (`mix.weights = "boot"`

) or using the multivariate normal distribution function (`mix.weights = "pmvnorm"`

). Note that, these weights are already available in the conLM, conRLM, and conGLM object. However, there are two exception in case of a conRLM object. If`test`

=`"Wald"`

or`"score"`

the weights need to be recalculated.`R:`

integer; number of bootstrap draws for`boot`

. The default value is set to 9999. Parallel options are available.`p.distr:`

random generation distribution for the parametric bootstrap. For all available distributions see`?distributions`

. For example, if`rnorm`

, samples are drawn from the normal distribution (default) with mean zero and variance one. If`rt`

, samples are drawn from a t-distribution. If`rchisq`

, samples are drawn from a chi-square distribution. The distributional parameters will be passed in via ...`df:`

degrees of freedom for`p.distr`

.`digits:`

the number of significant digits to use when printing.`parallel:`

the type of parallel operation to be used (if any). If missing, the default is set "no".`ncpus:`

integer: number of processes to be used in parallel operation: typically one would chose this to the number of available CPUs.`cl:`

an optional parallel or snow cluster for use if parallel = "snow". If not supplied, a cluster on the local machine is created for the duration of the iht call.`seed:`

seed value. The default value is set to 1234.`verbose:`

logical; if TRUE, information is shown at each bootstrap draw.`control:`

a list of control arguments:`absval:`

tolerance criterion for convergence (default = sqrt(.Machine$double.eps)). Only used for model of class lm.`maxit:`

the maximum number of iterations for the optimizer (default = 10000). Only used for model of class mlm (not yet supported).`tol:`

numerical tolerance value. Estimates smaller than`tol:`

are set to 0.

`...:`

additional arguments to be passed to the p.distr function.