-
Notifications
You must be signed in to change notification settings - Fork 9
Expand file tree
/
Copy pathchanges.txt
More file actions
207 lines (205 loc) · 10 KB
/
changes.txt
File metadata and controls
207 lines (205 loc) · 10 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
0.2.0
1. Add support multiple window + static data for RSP engine
2. Modify webui to support stream ingestion for RSP
3. Refactoring of materialisation & knowledge graph code
4. Fixes DStream and IStream R2S operators
5. Adds Reasoning support to RSP (single window materialization)
6. Add fraud detection system scenario and fix a bux with windowing
7. Fix a problem with combination_ml example by creating temperature predictor
8. Cover reasoning with tests
9. Fix a bug in reasoning related to filtering
10. Extend a bit test with reasoning
11. Add RDF-star and SPARQL-star support (quoted triples, Turtle-star/N-Triples-star parsing, SPARQL-star querying)
12. Add SPARQL-star built-in functions: TRIPLE, SUBJECT, PREDICATE, OBJECT, isTRIPLE
13. Add DELETE keyword support (basic and DELETE WHERE)
14. Fix INSERT to handle both normal and quoted triples
15. Add N-Triples-star and Turtle-star serialization (generate_ntriples, generate_turtle)
16. Improve Streamertail optimizer with quoted triple cardinality estimation
17. Fix ArithmeticExpression support in FILTER (properly store and evaluate AST instead of raw strings)
18. Add probabilistic RULE syntax with PROB annotations (combination, threshold, confidence)
19. Add ProbabilityStore for per-triple confidence score tracking
20. Add probabilistic semi-naive materialisation algorithm
21. Fix literal-in-quoted-triple bug in parse_ntriples_line
22. Add provenance semiring framework and TagStore for semiring-based reasoning
23. Remove old probabilistic reasoning path and migrate RULE PROB inference to provenance-based materialisation
24. Update combined syntax and combined rules examples to use provenance reasoning
25. Add stratified negation-as-failure (NAF) support: `negative_premise` field in Rule, safety check, `try_add_rule`
26. Add NOT body atom syntax in SPARQL rule parser
27. Add single-negative-stratum evaluation in provenance semi-naive materialisation
28. Add `WmcProvenance` (exact DNF-based WMC with signed literals, De Morgan negation, contradictory-clause pruning)
29. Add `TopKProofs::negate()` approximate complement via synthetic probability seed
30. Add polarity-aware RDF-star explanation export (`prob:hasNegatedSeed`)
31. Add SDD (Sentential Decision Diagram) engine: `SddManager`, vtree, apply, negate, WMC — O(|SDD|) inference
32. Add `SddProvenance` implementing `Provenance` trait backed by SDD
33. Add `PROB(combination=sdd)` parser arm
34. Rename `WmcProvenance` to `DnfWmcProvenance` with backward-compat type alias
35. Add `pub mod sdd` to shared crate
0.1.1
1. Modify whole project by making Cargo workspace
2. Modify GPU CUDA
3. Add proc_macro for GPU ```[gpu::main]```
4. Add cuda example
5. Add possibility to make a user defined function
6. Add user defined function example
7. Add 'CONCAT' keyword
8. Add indexing optimization
9. Modify WHERE clause by accept a uri in addition to variable or literal
10. Modify query by adding semicolon
11. Modify query, ability to write nested query
12. Add Datalog engine
13. Add Trie indexing for Datalog engine
14. Modify workspace split everything into parts (triple&dict -> shared, kg -> datalog)
15. Modify N3 logic by including nested rules
16. Modify N3 parser by utilize rayon
17. Modify Indexing by removing Trie algorithm and using my own from triple
18. Modify Indexing by adding Rule Index, add some examples
19. Modify knowledge Graph adding parallel processing for semi-naive
20. Modify SPARQL syntax by combining SPARQL + LP
21. Modify SPARQL syntax make execution of SPARQL + LP (N3 logic)
22. Integrate project with Python (currently only Datalog)
23. Modify SPARQL by making CUDA as a feature (by default disabled)
24. Add ARM instructions to 'FILTER'
25. Small cleaning
26. Modify Datalog by adding inconsistency
27. Add example in Rust and Python with inconsistency
28. Fix problem with inconsistency
29. Fix SIMD part for ARM instructions
30. Modify SPARQL + LP syntax by adding multiple parameter set
31. Add parsing for machine learning SPARQL + LP + ML
32. Ability to use machine learning models
33. Modify execution, make it as a separate file
34. Add ARM support for machine learning wrapper
35. Minor fix of example with backward chaining
36. Modify machine learning execution, more depend on query
37. Add error handling
38. Modify ML handler to use MLSchema and ability to run multiple ML models
39. Modify FILTER to have such epxression: ?age > 10 && ?age < 15 or ?age < 10 || ?age > 15
40. Add multiple conclusion, add example with mqtt (real scenario)
41. Modify multiple conclusion
42. Fix mqtt real scenario
43. Modify ML handler for using different machine learning algorithms
44. Modify ML execution to make it more generic
45. Modify ML handler by making MLSchema global, clean some parts of ML
46. Minor update of ML handler
47. Fix problem with handling different ML models
48. Modify ML handler by taking and compare models from Turtle file
49. Modify FILTER by adding arithmetic epxression
50. Clean SPARQL
51. Design QueryBuilder class for functional API
52. Add into Python wrapper QueryBuilder
53. Modify License
54. Add RSP
55. Modify RULE syntax instead of N3 logic conclusion use CONSTRUCT
56. Separate RULE syntax and SPARQL syntax
57. Add tests for parser
58. Improve License
59. Add Dockerfile
60. Minor fix in ML examples
61. Minor fix of dependency vulnarability
62. Modify ML by adding ability to link OUTPUT with CONSTRUCT clause
63. Add an ML example with link OUTPUT and CONSTRUCT clause
64. Fix ML example with link OUTPUT and CONSTRUCT clause
65. Integrate RSP with QueryBuilder
66. Add tests for QueryBuilder
67. Modify wrapper of QueryBuilder by adding RSP
68. Add an example in Python for RSP
69. Add N-Triples parser
70. Add in some files license header
71. Ability to querying 10M triples
72. Improve optimizer and joining algorithm for processing 10M triples
73. Use sorted-merge join algorithm instead of nested loop for big data
74. Modify sorted-merge join algorithm by using IDs instead of string
75. Integrate RSP with a parser
76. Minor fix of RULE syntax
77. Modify parser for execution when RSP
78. Add Hierarchy reasoning
79. Major update hierarchy reasoning
80. Add LIMIT
81. Major fix of RULE syntax
82. Update README and minor change
83. Add CLI for Kolibrie
84. Update one dependency to a new version
85. Update dependencies for parsing
86. Add combination stream
87. Add new queries for processing 10M triples
88. Improve volcano optimizer
89. Improve volcano optimizer by using IDs instead of string
90. Improve volcano optimizer by improving cardinality estimator and join algorithms
91. Minor change
92. Minor fix of queries in combination example
93. Improve parser by adding Retrieve RSP-QL syntax and add example
94. Minor fix of volcano optimizer
95. Add ORDER BY keyword
96. Separate join by adding into shared workspace
97. Modify naive and semi-naive algorithms by using hash join algorithm
98. Small cleaning
99. Cargo cleaning
100. Minor fix of predicate
101. Add initial RSP support
102. Modify sparqldatabase to isolate parsing, encoding and adding of ntriple data
103. Minor fix of predicate
104. Modify SpaqlDatabase and UnifiedIndex by adding deletion for triples, added to unit test
105. Multiple window support for RSP-QL syntax
106. Fix a small bug with windowing (retrieve the queries that are executed in each window)
107. Major refactoring of Volcano Optimizer (splitting into separate files)
108. Major update of Volcano Optimizer: correctly execute all query patterns in optimizer
109. Store into cache database stats
110. Properly estimate operators
111. Repalce BTreeMap with HashMap
112. Improve join algorithms
113. Add ability to recognize different shapes of query such as snowflake, line, star
114. Rename knowledge_graph.rs to reasoning.rs and rename class KnowledgeGraph to Reasoner & remove unused class
115. Improve Volcano Optimizer by including filtering
116. Improve Volcano Optimizer by adding nested query support
117. Improve Volcano Optimizer by adding BIND, UDF, INSERT, VALUES support
118. Modified RSP engine
119. Improve windowing of RSP engine
120. Add slicing for BIND instead of Vec
121. Adding support multi-window for SingleThread
122. Rename Volcano Optimizer to Streamertail
123. Improve error handler
124. Add StorageManager and trait for coordinating between static and streaming data
125. Add join operation for RSP engine
126. Modify RSP engine by using crossbeam instead of mpsc
127. Full rename of volcano optimizer into streamertail optimizer
128. Modify LSM-Tree by supporting disk storage layer
129. Fix problem with ML execution
130. Add full combination example (RSP + Reasoning + ML)
131. Split LSM-Tree
132. MLPredict operator for Streamertail optimizer
133. Improve docker, webui and add support of n-triples
134. Fix a bug with reasoning n-triples
135. Fix a bug with a select all query
136. Add syntatix sugar 'a' for rdf:type
137. Modify test for parser
138. Modify webui and support of rule chains
139. Fix a bug with reasoning
140. Fix a bug with dictionary in parser instead of cloning everything, clone a pointer
141. Modify webui by adding support of N3 logic and Turtle
0.1.0
1. Parsing RDF/XML
2. Parsing Turtle
3. Parsing N3
4. Desing SQL syntax
5. Desing JOINing
5. Add aggregation functions (MIN, MAX, AVG, SUM)
6. Add 'FILTER' keyword
7. Add 'INSERT' keyword
8. Ability to make 'SELECT *' or select all
9. Add 'VALUES' keyword
10. Ability to read files (dataset files)
12. Add benchmark
13. Add unit tests
14. Add examples
15. Modify join by using rayon
16. Modify parse_rdf by using rayon and crossbeam
17. Modify join by uisng hash join and use rayon for parallel computation
18. Add volcano optimizer and cardinality estimator
19. Add knowledge graph
20. Add forward and backward chaining
21. Ability to process N3 logic
22. Add IStream, RStream, DStream
23. Add sliding window
24. Add policies (window close policy, content change policy, non-empty content policy, periodic policy)
25. Add REST API for database engine
26. Ability to generate synthetic dataset