Introduction to SSTN

library(sstn)

Introduction

The SSTN package provides the Self-Similarity Test for Normality (SSTN), a statistical test designed to assess whether a given numeric sample originates from a normal distribution.

The SSTN relies on iteratively estimating the characteristic function of the sum of i.i.d. random variables based on the standardized data and comparing these estimated characteristic functions.

A Monte Carlo procedure is used to generate the distribution of the test statistic under the null hypothesis, which allows computation of a \(p\)-value.

Main function of the package

Below, we provide a brief example of how to use the sstn() function.

set.seed(123)

# Sample from standard normal (null hypothesis true)
x <- rnorm(100)
res <- sstn(x)
#> SSTN Test
#> --------------------------------------------------
#> Method: SSTN (asymptotic null distribution)
#> Test statistic (reported): 0.78661
#> p-value: 0.51400
res$p.value
#> [1] 0.514

# Sample from Gamma distribution (null hypothesis false)
y <- rgamma(100, 1)
res2 <- sstn(y)
#> SSTN Test
#> --------------------------------------------------
#> Method: SSTN (asymptotic null distribution)
#> Test statistic (reported): 27.74172
#> p-value: 0.00000
res2$p.value
#> [1] 0

References

For more detailed information on the methods used in this package, please refer to the following publication:

Anarat A. and Schwender, H. (2026). A test for normality based on self-similarity. arXiv preprint. https://arxiv.org/abs/2604.03810