X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=src%2Fmath%2Finteraction.c;h=a36755b541265fbc3da3e1ca8fcc465ec0ea120e;hb=refs%2Fbuilds%2F20131224033012%2Fpspp;hp=33da8423bd7c7545a69e4c51a1d0a9a5abd4318d;hpb=9a331fe64eb814ae5c1322e21717a04fb254bf65;p=pspp
diff --git a/src/math/interaction.c b/src/math/interaction.c
index 33da8423bd..a36755b541 100644
--- a/src/math/interaction.c
+++ b/src/math/interaction.c
@@ -1,5 +1,5 @@
/* PSPP - a program for statistical analysis.
- Copyright (C) 2009 Free Software Foundation, Inc.
+ Copyright (C) 2011, 2012 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
@@ -14,268 +14,235 @@
You should have received a copy of the GNU General Public License
along with this program. If not, see . */
+#include
+
+#include "data/case.h"
+#include "interaction.h"
+
+#include "data/value.h"
+#include "data/variable.h"
+#include "libpspp/str.h"
+
+#include "gl/xalloc.h"
+
+#include
+
+
/*
- An interaction is a gsl_vector containing a "product" of other
- variables. The variables can be either categorical or numeric.
- If the variables are all numeric, the interaction is just the
- scalar product. If any of the variables are categorical, their
- product is a vector containing 0's in all but one entry. This entry
- is found by combining the vectors corresponding to the variables'
- OBS_VALS member. If there are K categorical variables, each with
- N_1, N_2, ..., N_K categories, then the interaction will have
- N_1 * N_2 * N_3 *...* N_K - 1 entries.
-
- When using these functions, make sure the orders of variables and
- values match when appropriate.
- */
+ An interaction is a structure containing a "product" of other
+ variables. The variables can be either string or numeric.
+
+ Interaction is commutative. That means, that from a mathematical point of
+ view, the order of the variables is irrelevant. However, for display
+ purposes, and for matching with an interaction's value the order is
+ pertinent.
+
+ Therefore, when using these functions, make sure the orders of variables
+ and values match when appropriate.
+*/
-#include
-#include
-#include
-#include
-#include
-#include
-#include