The research domain of process discovery aims at constructing a process model (e.g. a Petri net) which is an abstract representation of an execution log. Such a Petri
net should (1) be able to reproduce the log under consideration and (2) be independent of the number of cases in the log.
In this paper, we present a process discovery algorithm where we use concepts taken from the language-based theory of regions,
a well-known Petri net research area. We identify a number of shortcomings of this theory from the process discovery perspective,
and we provide solutions based on integer linear programming.