X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=src%2Fmath%2Finteraction.c;h=4e4134f0ffcceb0b1ac79b5a8e0b583a3924be41;hb=aa2cd68fb42668614f168df3a319e48d009c3cc7;hp=05a8bf46bd4ade424cef3d9bec85fde043205ea5;hpb=5fb2011a5a7d63dd694d49944a114562bfe764ca;p=pspp
diff --git a/src/math/interaction.c b/src/math/interaction.c
index 05a8bf46bd..4e4134f0ff 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 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,264 +14,230 @@
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