| Input: event E, Occ_vec All Events S, Max_Pattern_Length, Prev_Keys |
| Output: a list of mined patterns |
| NP = {}, New_Events = slice_even (S, Prev_Keys) Periodic = periodicity (E, Occ_vec,lengthofOcc_vec,Confidence) for i in {O1, ..., On} of Period do |
| for Key in {K1, ..., Kn} of New_Events do for Item |
| in {I1, ..., In} of |
| New_Events(Keys) do |
| Difference ← Periodic − Item if |
| continue |
| end Difference > Max_Pattern_Length |
| then |
| if Item > Periodic then if |
| Difference > KeySize then |
| star_count = Difference− |
| KeySize |
| end |
| if star_count > star_limit then |
| end |
| continue |
| end |
| end stars = calculate_stars(star_count) pattern_key = E + stars + Key |
| end patterns_with_stars = Periodic[i] NP ∪ pattern_with_star |
| else |
| pattern_key = Key + E patterns_without_stars = Periodic[i] |
| NP ∪ pattern_without_star_count |
| end if Difference > KeySize then |
| star_count = Difference − KeySize |
| else |
| if star_count > star_limit then |
| continue |
| end end |
| end stars = calculate_stars (star_count) pattern_key = Key + stars + E pattern_with_star |
| end =Periodic[i] NP ∪ pattern_with_star |
| pattern_key = Key + Epattern_without_star = Periodic[i] NP ∪ |
| pattern_without_star |
| end for j in {Key1, ..., Keyn} of New_Events do |
| NL_Patterns = calc_next (New_Events, NP, Max_Pattern_Length) NP ∪ |
| update (NL_Patterns) |
| end |
| end |
| ReturnNP |