1 set extra_float_digits =0;
2 SELECT set_smlar_limit(0.3);
4 SET smlar.type = "tfidf";
5 SET smlar.stattable = "int4_stat";
7 UPDATE test_int4 SET v = v || '{50,50,50}'::int4[] WHERE t >=50 AND t < 60;
8 INSERT INTO test_int4 VALUES(201, '{50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50}');
10 CREATE TABLE int4_stat (
12 ndoc int4 NOT NULL CHECK (ndoc>0)
15 INSERT INTO int4_stat (
20 (SELECT array_to_col(v) AS w FROM test_int4 WHERE v IS NOT NULL) AS q
24 INSERT INTO int4_stat VALUES (NULL, (SELECT count(*) FROM test_int4));
26 DROP INDEX idx_test_int4;
28 SET smlar.tf_method = "n";
29 SET smlar.idf_plus_one = off;
30 SELECT smlar('{199,199,199,199,1}', '{199,1}'::int4[]);
31 SELECT t, smlar(v, '{10,9,8,7,6,5,4,3,2,1}') AS s FROM test_int4 WHERE v % '{10,9,8,7,6,5,4,3,2,1}' ORDER BY s DESC, t;
32 SELECT t, smlar(v, '{50,49,8,7,6,5,4,33,2,1}') AS s FROM test_int4 WHERE v % '{50,49,8,7,6,5,4,33,2,1}' ORDER BY s DESC, t;
34 SET smlar.tf_method = "n";
35 SET smlar.idf_plus_one = on;
36 SELECT smlar('{199,199,199,199,1}', '{199,1}'::int4[]);
37 SELECT t, smlar(v, '{10,9,8,7,6,5,4,3,2,1}') AS s FROM test_int4 WHERE v % '{10,9,8,7,6,5,4,3,2,1}' ORDER BY s DESC, t;
38 SELECT t, smlar(v, '{50,49,8,7,6,5,4,33,2,1}') AS s FROM test_int4 WHERE v % '{50,49,8,7,6,5,4,33,2,1}' ORDER BY s DESC, t;
40 SET smlar.tf_method = "log";
41 SET smlar.idf_plus_one = off;
42 SELECT smlar('{199,199,199,199,1}', '{199,1}'::int4[]);
43 SELECT t, smlar(v, '{10,9,8,7,6,5,4,3,2,1}') AS s FROM test_int4 WHERE v % '{10,9,8,7,6,5,4,3,2,1}' ORDER BY s DESC, t;
44 SELECT t, smlar(v, '{50,49,8,7,6,5,4,33,2,1}') AS s FROM test_int4 WHERE v % '{50,49,8,7,6,5,4,33,2,1}' ORDER BY s DESC, t;
46 SET smlar.tf_method = "log";
47 SET smlar.idf_plus_one = on;
48 SELECT smlar('{199,199,199,199,1}', '{199,1}'::int4[]);
49 SELECT t, smlar(v, '{10,9,8,7,6,5,4,3,2,1}') AS s FROM test_int4 WHERE v % '{10,9,8,7,6,5,4,3,2,1}' ORDER BY s DESC, t;
50 SELECT t, smlar(v, '{50,49,8,7,6,5,4,33,2,1}') AS s FROM test_int4 WHERE v % '{50,49,8,7,6,5,4,33,2,1}' ORDER BY s DESC, t;
52 SET smlar.tf_method = "const";
53 SET smlar.idf_plus_one = off;
54 SELECT smlar('{199,199,199,199,1}', '{199,1}'::int4[]);
55 SELECT t, smlar(v, '{10,9,8,7,6,5,4,3,2,1}') AS s FROM test_int4 WHERE v % '{10,9,8,7,6,5,4,3,2,1}' ORDER BY s DESC, t;
56 SELECT t, smlar(v, '{50,49,8,7,6,5,4,33,2,1}') AS s FROM test_int4 WHERE v % '{50,49,8,7,6,5,4,33,2,1}' ORDER BY s DESC, t;
58 SET smlar.tf_method = "const";
59 SET smlar.idf_plus_one = on;
60 SELECT smlar('{199,199,199,199,1}', '{199,1}'::int4[]);
61 SELECT t, smlar(v, '{10,9,8,7,6,5,4,3,2,1}') AS s FROM test_int4 WHERE v % '{10,9,8,7,6,5,4,3,2,1}' ORDER BY s DESC, t;
62 SELECT t, smlar(v, '{50,49,8,7,6,5,4,33,2,1}') AS s FROM test_int4 WHERE v % '{50,49,8,7,6,5,4,33,2,1}' ORDER BY s DESC, t;
64 CREATE INDEX idx_test_int4 ON test_int4 USING gist (v _int4_sml_ops);
65 SET enable_seqscan = off;
67 SET smlar.tf_method = "n";
68 SET smlar.idf_plus_one = off;
69 SELECT smlar('{199,199,199,199,1}', '{199,1}'::int4[]);
70 SELECT t, smlar(v, '{10,9,8,7,6,5,4,3,2,1}') AS s FROM test_int4 WHERE v % '{10,9,8,7,6,5,4,3,2,1}' ORDER BY s DESC, t;
71 SELECT t, smlar(v, '{50,49,8,7,6,5,4,33,2,1}') AS s FROM test_int4 WHERE v % '{50,49,8,7,6,5,4,33,2,1}' ORDER BY s DESC, t;
73 SET smlar.tf_method = "n";
74 SET smlar.idf_plus_one = on;
75 SELECT smlar('{199,199,199,199,1}', '{199,1}'::int4[]);
76 SELECT t, smlar(v, '{10,9,8,7,6,5,4,3,2,1}') AS s FROM test_int4 WHERE v % '{10,9,8,7,6,5,4,3,2,1}' ORDER BY s DESC, t;
77 SELECT t, smlar(v, '{50,49,8,7,6,5,4,33,2,1}') AS s FROM test_int4 WHERE v % '{50,49,8,7,6,5,4,33,2,1}' ORDER BY s DESC, t;
79 SET smlar.tf_method = "log";
80 SET smlar.idf_plus_one = off;
81 SELECT smlar('{199,199,199,199,1}', '{199,1}'::int4[]);
82 SELECT t, smlar(v, '{10,9,8,7,6,5,4,3,2,1}') AS s FROM test_int4 WHERE v % '{10,9,8,7,6,5,4,3,2,1}' ORDER BY s DESC, t;
83 SELECT t, smlar(v, '{50,49,8,7,6,5,4,33,2,1}') AS s FROM test_int4 WHERE v % '{50,49,8,7,6,5,4,33,2,1}' ORDER BY s DESC, t;
85 SET smlar.tf_method = "log";
86 SET smlar.idf_plus_one = on;
87 SELECT smlar('{199,199,199,199,1}', '{199,1}'::int4[]);
88 SELECT t, smlar(v, '{10,9,8,7,6,5,4,3,2,1}') AS s FROM test_int4 WHERE v % '{10,9,8,7,6,5,4,3,2,1}' ORDER BY s DESC, t;
89 SELECT t, smlar(v, '{50,49,8,7,6,5,4,33,2,1}') AS s FROM test_int4 WHERE v % '{50,49,8,7,6,5,4,33,2,1}' ORDER BY s DESC, t;
91 SET smlar.tf_method = "const";
92 SET smlar.idf_plus_one = off;
93 SELECT smlar('{199,199,199,199,1}', '{199,1}'::int4[]);
94 SELECT t, smlar(v, '{10,9,8,7,6,5,4,3,2,1}') AS s FROM test_int4 WHERE v % '{10,9,8,7,6,5,4,3,2,1}' ORDER BY s DESC, t;
95 SELECT t, smlar(v, '{50,49,8,7,6,5,4,33,2,1}') AS s FROM test_int4 WHERE v % '{50,49,8,7,6,5,4,33,2,1}' ORDER BY s DESC, t;
97 SET smlar.tf_method = "const";
98 SET smlar.idf_plus_one = on;
99 SELECT smlar('{199,199,199,199,1}', '{199,1}'::int4[]);
100 SELECT t, smlar(v, '{10,9,8,7,6,5,4,3,2,1}') AS s FROM test_int4 WHERE v % '{10,9,8,7,6,5,4,3,2,1}' ORDER BY s DESC, t;
101 SELECT t, smlar(v, '{50,49,8,7,6,5,4,33,2,1}') AS s FROM test_int4 WHERE v % '{50,49,8,7,6,5,4,33,2,1}' ORDER BY s DESC, t;
103 DROP INDEX idx_test_int4;
104 CREATE INDEX idx_test_int4 ON test_int4 USING gin (v _int4_sml_ops);
105 SET enable_seqscan = off;
107 SET smlar.tf_method = "n";
108 SET smlar.idf_plus_one = off;
109 SELECT smlar('{199,199,199,199,1}', '{199,1}'::int4[]);
110 SELECT t, smlar(v, '{10,9,8,7,6,5,4,3,2,1}') AS s FROM test_int4 WHERE v % '{10,9,8,7,6,5,4,3,2,1}' ORDER BY s DESC, t;
111 SELECT t, smlar(v, '{50,49,8,7,6,5,4,33,2,1}') AS s FROM test_int4 WHERE v % '{50,49,8,7,6,5,4,33,2,1}' ORDER BY s DESC, t;
113 SET smlar.tf_method = "n";
114 SET smlar.idf_plus_one = on;
115 SELECT smlar('{199,199,199,199,1}', '{199,1}'::int4[]);
116 SELECT t, smlar(v, '{10,9,8,7,6,5,4,3,2,1}') AS s FROM test_int4 WHERE v % '{10,9,8,7,6,5,4,3,2,1}' ORDER BY s DESC, t;
117 SELECT t, smlar(v, '{50,49,8,7,6,5,4,33,2,1}') AS s FROM test_int4 WHERE v % '{50,49,8,7,6,5,4,33,2,1}' ORDER BY s DESC, t;
119 SET smlar.tf_method = "log";
120 SET smlar.idf_plus_one = off;
121 SELECT smlar('{199,199,199,199,1}', '{199,1}'::int4[]);
122 SELECT t, smlar(v, '{10,9,8,7,6,5,4,3,2,1}') AS s FROM test_int4 WHERE v % '{10,9,8,7,6,5,4,3,2,1}' ORDER BY s DESC, t;
123 SELECT t, smlar(v, '{50,49,8,7,6,5,4,33,2,1}') AS s FROM test_int4 WHERE v % '{50,49,8,7,6,5,4,33,2,1}' ORDER BY s DESC, t;
125 SET smlar.tf_method = "log";
126 SET smlar.idf_plus_one = on;
127 SELECT smlar('{199,199,199,199,1}', '{199,1}'::int4[]);
128 SELECT t, smlar(v, '{10,9,8,7,6,5,4,3,2,1}') AS s FROM test_int4 WHERE v % '{10,9,8,7,6,5,4,3,2,1}' ORDER BY s DESC, t;
129 SELECT t, smlar(v, '{50,49,8,7,6,5,4,33,2,1}') AS s FROM test_int4 WHERE v % '{50,49,8,7,6,5,4,33,2,1}' ORDER BY s DESC, t;
131 SET smlar.tf_method = "const";
132 SET smlar.idf_plus_one = off;
133 SELECT smlar('{199,199,199,199,1}', '{199,1}'::int4[]);
134 SELECT t, smlar(v, '{10,9,8,7,6,5,4,3,2,1}') AS s FROM test_int4 WHERE v % '{10,9,8,7,6,5,4,3,2,1}' ORDER BY s DESC, t;
135 SELECT t, smlar(v, '{50,49,8,7,6,5,4,33,2,1}') AS s FROM test_int4 WHERE v % '{50,49,8,7,6,5,4,33,2,1}' ORDER BY s DESC, t;
137 SET smlar.tf_method = "const";
138 SET smlar.idf_plus_one = on;
139 SELECT smlar('{199,199,199,199,1}', '{199,1}'::int4[]);
140 SELECT t, smlar(v, '{10,9,8,7,6,5,4,3,2,1}') AS s FROM test_int4 WHERE v % '{10,9,8,7,6,5,4,3,2,1}' ORDER BY s DESC, t;
141 SELECT t, smlar(v, '{50,49,8,7,6,5,4,33,2,1}') AS s FROM test_int4 WHERE v % '{50,49,8,7,6,5,4,33,2,1}' ORDER BY s DESC, t;
143 RESET enable_seqscan;