package Ġnl . j ol an ren sen . efficient ly Discover ing T ernary L agged Corre lations . na ive Ċ Ċ import Ġnl . j ol an ren sen . efficient ly Discover ing T ernary L agged Corre lations . pow In Place Ċ import Ġorg . jetbrains . bio . vik tor . F 6 4 Flat Array Ċ import Ġjava . io . Serializable Ċ import Ġkotlin . math . sqrt Ċ Ċ object ĠE uclidean Ġ: ĠAbstract Correlation (), ĠSerializable Ġ{ ĊĊĠĠĠ Ġoverride Ġval Ġneeds Mean Ġ= Ġfalse ĊĠĠĠ Ġoverride Ġval Ġneeds Min Ġ= Ġfalse ĊĠĠĠ Ġoverride Ġval Ġneeds Max Ġ= Ġfalse ĊĠĠĠ Ġoverride Ġval Ġneeds Entropy Ġ= Ġfalse ĊĠĠĠ Ġoverride Ġval Ġmax Amount Of Series Ġ= Ġ 2 ĊĊĊĠĠĠ Ġoverride Ġfun Ġcorrelation Function ( series : ĠArray < F 6 4 Flat Array >, Ġextra Args : ĠArray < Correlation Extra Data >? ): ĠDouble Ġ{ ĊĠĠĠĠĠĠĠ Ġcheck Requirements ( series , Ġextra Args ) ĊĠĠĠĠĠĠĠ Ġval Ġ( x , Ġy ) Ġ= Ġseries ĊĊĠĠĠĠĠĠĠ Ġreturn Ġsqrt ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ( x Ġ- Ġy ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. pow In Place ( 2 . 0 ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. sum () ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġcorrelation Function ( ĊĠĠĠĠĠĠĠ Ġfirst Series : ĠF 6 4 Flat Array , ĊĠĠĠĠĠĠĠ Ġsecond Series : ĠF 6 4 Flat Array , ĊĠĠĠĠĠĠĠ Ġextra Args : ĠArray < Correlation Extra Data > ?, ĊĠĠĠ Ġ): ĠDouble Ġ{ ĊĠĠĠĠĠĠĠ Ġcheck Requirements ( array Of ( first Series , Ġsecond Series ), Ġextra Args ) ĊĊĠĠĠĠĠĠĠ Ġreturn Ġsqrt ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ( first Series Ġ- Ġsecond Series ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. pow In Place ( 2 . 0 ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. sum () ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} Ċ }