Benjamin Moreau

Patricia Serrano-Alvarado

Matthieu Perrin

Emmanuel Desmontils

Modelling the Compatibility of Licenses

Web applications facilitate combining resources (linked data, web services, source code, documents, etc.) to create new ones. For a resource producer, choosing the appropriate license for a combined resource is not easy. It involves choosing a license compliant with all the licenses of combined resources and analysing the reusability of the resulting resource through the compatibility of its license. The risk is either, to choose a license too restrictive making the resource difficult to reuse, or to choose a not enough restrictive license that will not sufficiently protect the resource. Finding the right trade-off between compliance and compatibility is a difficult process. An automatic ordering over licenses would facilitate this task. Our research question is: given a license li, how to automatically position li over a set of licenses in terms of compatibility and compliance? We propose CaLi, a model that partially orders licenses. Our approach uses restrictiveness relations among licenses to define compatibility and compliance. We validate experimentally CaLi with a quadratic algorithm and show its usability through a prototype of a license-based search engine.

Introduction

Web applications facilitate combining resources (linked data, web services, source code, documents, etc.) to create new ones. To facilitate reuse, resource producers should systematically associate licenses with resources before sharing or publishing them [START_REF] Seneviratne | Policy-Aware Content Reuse on the Web[END_REF]. Licenses specify precisely the conditions of reuse of resources, i.e., what actions are permitted, obliged and prohibited when using the resource.

For a resource producer, choosing the appropriate license for a combined resource or choosing the appropriate licensed resources for a combination is a difficult process. It involves choosing a license compliant with all the licenses of combined resources as well as analysing the reusability of the resulting resource through the compatibility of its license. The risk is either, to choose a license too restrictive making the resource difficult to reuse, or to choose a not enough restrictive license that will not sufficiently protect the resource.

Relations of compatibility, compliance and restrictiveness on licenses could be very useful in a wide range of applications. Imagine license-based search en-gines for services such as GitHub 3 , APISearch 4 , LODAtlas 5 , DataHub 6 , Google Dataset Search 7 or OpenDataSoft 8 that could find resources licensed under licenses compatible or compliant with a specific license. Answers could be partially ordered from the least to the most restrictive license. We argue that a model for license orderings would allow the development of such applications.

We consider simplified definitions of compliance and compatibility inspired by works like [START_REF] Gangadharan | Service License Composition and Compatibility Analysis[END_REF][START_REF] Villata | Licenses Compatibility and Composition in the Web of Data[END_REF][START_REF] Governatori | One License to Compose Them All. A Deontic Logic Approach to Data Licensing on the Web of Data[END_REF][START_REF] Kapitsaki | Automating the License Compatibility Process in Open Source Software With SPDX[END_REF]: a license l j is compliant with a license l i if a resource licensed under l i can be licensed under l j without violating l i . If a license l j is compliant with l i then we consider that l i is compatible with l j and that resources licensed under l i are reusable with resources licensed under l j . In general, if l i is compatible with l j then l j is more (or equally) restrictive than l i . We also consider that a license l j is more (or equally) restrictive than a license l i if l j allows at most the same permissions and has at least the same prohibitions/obligations than l i . Usually but not always, when l i is less restrictive than l j then l i is compatible with l j . For instance, see Fig. 1 that shows an excerpt of three Creative Commons (CC) 9 licenses described in RDF and using the ODRL vocabulary 10 . Notice that there exists a restrictiveness order among these licenses, (a) is less restrictive than (b) and (b) is less restrictive than (c). By transitivity (a) is less restrictive than (c). Notice also that (a) is compatible with (b) and (c), but (b) is not compatible with (c). This is due to the semantics of the prohibited action DerivativeWorks that forbids the distribution of a derivation (remix, transform or build upon) of the protected resource under a different license. Thus, depending on the semantics of their actions, a restrictiveness relation between two licenses does not imply a compatibility relation.

Our research question is: given a license l i , how to automatically position l i over a set of licenses in terms of compatibility and compliance? The challenge we face is how to generalise the automatic definition of the ordering relations among licenses while taking into account the influence of the semantics of actions.

Inspired by lattice-based access control models [START_REF] Denning | A Lattice Model of Secure Information Flow[END_REF][START_REF] Sandhu | Lattice-Based Access Control Models[END_REF], we propose CaLi (ClAssification of LIcenses), a model for license orderings that uses restrictiveness relations and constraints among licenses to define compatibility and compliance. We validate experimentally CaLi with a quadratic algorithm and show its usability through a prototype of a license-based search engine. Our work is a step towards facilitating and encouraging the publication and reuse of licensed resources in the Web of Data. However, it is not intended to provide legal advice.

This paper is organised as follows. Section 2 discuses related works, Section 3 introduces the CaLi model, Section 4 illustrates the usability of our model, Section 5 shows experiments of the implemented algorithm as well as the prototype of a license-based search engine, and Section 6 concludes.

Related work

Automatic license classification requires machine-readable licenses. License expression languages such as CC REL 11 , ODRL, or L4LOD12 enable fine-grained RDF description of licenses. Works like [START_REF] Sadeh | Towards Usable Privacy Policies: Semi-Automatically Extracting Data Practices from Websites' Privacy Policies[END_REF] and [START_REF] Cabrio | These Are Your Rights[END_REF] use natural language processing to automatically generate RDF licenses from licenses described in natural language. Other works such as [START_REF] Doncel | A Dataset of RDF Licenses[END_REF][START_REF]Creative Commons licenses in RDF[END_REF][START_REF] Havur | DALICC: A Framework for Publishing and Consuming Data Assets Legally[END_REF] propose a set of well-known licenses in RDF described in CC REL and ODRL. Thereby, in this work, we suppose that there exist consistent licenses described in RDF.

There exist some tools to facilitate the creation of license compliant resources. TLDRLegal 13 , CC Choose14 and ChooseALicense15 help users to choose actions to form a license for their resources. CC search 16 allows users to find images licensed under Creative Commons licenses that can be commercialized, modified, adapted, or built upon. Web2rights proposes a tool to check compatibility among Creative Commons licenses17 . DALICC [START_REF] Havur | DALICC: A Framework for Publishing and Consuming Data Assets Legally[END_REF] allows to compose arbitrary licenses and provides information about equivalence, similarity and compatibility of licenses. Finally, Licentia 18 , based on deontic logic to reason over the licenses, proposes a web service to find licenses compatible with a set of permissions, obligations and prohibitions chosen by the user. From these tools, only Licentia and DALICC use machine-readable licenses 19,20 in RDF. But unfortunately, these works do not order licenses in terms of compatibility or compliance.

The easiest way to choose a license for a combined resource is to create a new one by combining all resource licenses to combine. Several works address the problem of license compatibility and license combination. In web services, [START_REF] Gangadharan | Service License Composition and Compatibility Analysis[END_REF] proposes a framework that analyses compatibility of licenses to verify if two services are compatible and then generates the composite service license. [START_REF] Mesiti | On the Composition of Digital Licenses in Collaborative Environments[END_REF] addresses the problem of license preservation during the combination of digital resources (music, data, picture, etc.) in a collaborative environment. Licenses of combined resources are combined into a new one. In the Web of Data, [START_REF] Villata | Licenses Compatibility and Composition in the Web of Data[END_REF] proposes a framework to check compatibility among CC REL licenses. If licenses are compatible, a new license compliant with combined ones is generated. [START_REF] Governatori | One License to Compose Them All. A Deontic Logic Approach to Data Licensing on the Web of Data[END_REF] formally defines the combination of licenses using deontic logic. [START_REF] Soto-Mendoza | Policies Composition Based on Data Usage Context[END_REF] proposes PrODUCE, an approach to combine usage policies taking into account the usage context. These works focus on combining operators for automatic license combination but do not propose to position a license over a set of licenses.

Concerning the problem of license classification to facilitate the selection of a license, [START_REF] Daga | A Bottom-up Approach for Licences Classification and Selection[END_REF] uses Formal Concept Analysis (FCA) to generate a lattice of actions. Once pruned and annotated, this lattice can be used to classify licenses in terms of features. This classification reduces the selection of a license to an average of three to five questions. However, this work does not address the problem of license compatibility. Moreover, FCA is not suitable to generate compatibility or restrictiveness relations among licenses. FCA defines a derivation operator on objects that returns a set of attributes shared by the objects. We consider that the set of actions in common of two licenses is not enough to infer these relations. If applied to our introductory example, FCA can only work with permissions but not with obligations and prohibitions. That is because l i is less restrictive than l j if permissions of l i are a superset of permissions of l j , but regarding obligations and prohibitions, l i is less restrictive than l j if they are a subset of those of l j . In the context of Free Open Source Software (FOSS), [START_REF] Kapitsaki | Automating the License Compatibility Process in Open Source Software With SPDX[END_REF] proposes an approach, based on a directed acyclic graph, to detect license violations in existing software packages. It considers that license l i is compatible with l j if the graph contains a path from l i to l j . However, as such a graph is build from a manual interpretation of each license, its generalisation and automation is not possible.

In the domain of access control, [START_REF] Denning | A Lattice Model of Secure Information Flow[END_REF] proposes a lattice model of secure information flow. This model classifies security classes with associated resources. Like in the compatibility graph of [START_REF] Kapitsaki | Automating the License Compatibility Process in Open Source Software With SPDX[END_REF], security class sc i is compatible with sc j if the lattice contains a path from sc i to sc j . Thus, this path represents the authorized flow of resources (e.g., resource r i protected with sc i can flow to a resource protected by sc j without violating sc i .). The lattice can be generated automatically through a pairwise combination of all security classes if sc i combined with sc k gives sc j where sc i and sc k are both compatible with sc j . [START_REF] Sandhu | Lattice-Based Access Control Models[END_REF] describes several models based on this approach but none focuses on classifying licenses.

None of these works answers our research question. They do not allow to automatically position a license over a set of licenses in terms of compatibility or compliance. In our work we propose a lattice-based model inspired by [START_REF] Denning | A Lattice Model of Secure Information Flow[END_REF]. This model is independent of any license description language, application context and licensed resource so that it can be used in a wide variety of domains.

CaLi: a lattice-based license model

The approach we propose to partially order licenses in terms of compatibility and compliance passes through a restrictiveness relation. In a license, actions can be distributed in what we call status, e.g., permissions, obligations and prohibitions. To decide if a license l i is less restrictive than l j , it is necessary to know if an action in a status is considered as less restrictive than the same action in another status. In the introductory example (Fig. 1), we consider that permissions are less restrictive than obligations, which are less restrictive than prohibitions, i.e., P ermission Duty P rohibition. This relation can be seen in Fig 2b.

We remark that if two licenses have a restrictiveness relation then it is possible that they have a compatibility relation too. The restrictiveness relation between the licenses can be automatically obtained according to the status of actions without taking into account the semantics of the actions. Thus, based on lattice-ordered sets [START_REF] Davey | Introduction to Lattices and Order[END_REF], we define a restrictiveness relation among licenses.

To identify the compatibility among licenses, we refine the restrictiveness relation with constraints. The goal is to take into account the semantics of actions. Constraints also distinguish valid licenses from non-valid ones. We consider a license l i as non-valid if a resource can not be licensed under l i , e.g., a license that simultaneously permits the Derive action21 and prohibits DerivativeWorks22 . This approach is based on:

1. a set of actions (e.g., read, modify, distribute, etc.); 2. a restrictiveness lattice of status that defines (i) all possible status of an action in a license (i.e., permission, obligation, prohibition, recommendation, undefined, etc.) and (ii) the restrictiveness relation among status; a restrictiveness lattice of licenses is obtained from a combination of 1 and 2; 3. a set of compatibility constraints to identify if a restrictiveness relation between two licenses is also a compatibility relation; and 4. a set of license constraints to identify non-valid licenses.

Next section introduces formally the CaLi model and Section 3.2 introduces a simple example of a CaLi ordering.

Formal model description

We first define a restrictiveness lattice of status. We use a lattice structure because it is necessary, for every pair of status, to know which status is less (or more) restrictive than both.

Definition 1 (Restrictiveness lattice of status LS).

A restrictiveness lattice of status is a lattice LS = (S, S ) that defines all possible status S for a license and the relation S as the restrictiveness relation over S. For two status s i , s j , if s i S s j then s i is less restrictive than s j . Different LSs can be defined according to the application domain. Fig. 2a shows the diagram of a LS inspired by file systems where actions can be either prohibited or permitted. With this lattice, prohibiting to read a file is more restrictive than permitting to read it. Fig. 2b illustrates a LS for CC licenses where actions are either permitted, required (Duty) or prohibited. Fig. 2c shows a LS inspired by the ODRL vocabulary. In ODRL, actions can be either permitted, obliged, prohibited or not specified (i.e., undefined). In this lattice, the undefined status is the least restrictive and the prohibited one the most restrictive. Fig. 2d shows a LS where a recommended or permitted action is less restrictive than the same action when it is permitted and recommended. Now we formally define a license based on the status of its actions.

Definition 2 (License).

Let A be a set of actions and LS = (S, S ) be a restrictiveness lattice of status.

A license is a function l : A → S. We denote by L A,LS the set of all licenses.

For example, consider A = {read , modify, distribute}, LS the lattice of Fig. 2c and two licenses: l i which permits read and distribute but where modify is undefined and l j where modify is also undefined but which permits read and prohibits distribute. We define l i and l j as follows:

∀a ∈ A: li(a) = Undefined if a ∈ {modify}; Permission if a ∈ {read , distribute}. lj(a) =    Undefined if a ∈ {modify}; Permission if a ∈ {read }; Prohibition if a ∈ {distribute}.
A restrictiveness lattice of status and a set of licenses make possible to partially order licenses in a restrictiveness lattice of licenses.

Definition 3 (Restrictiveness relation over licenses).

Let A be a set of actions and LS = (S, S ) be a restrictiveness lattice of status associated to the join and meet operators ∨ S and ∧ S , and l i , l j ∈ L A,LS be two licenses. We say that l i is less restrictive than l j , denoted l i R l j , if for all actions a ∈ A, the status of a in l i is less restrictive than the status of a in l j . That is, l i R l j if ∀a ∈ A, l i (a) S l j (a).

Moreover, we define the two operators ∨ and ∧ as follows. For all actions a ∈ A, the status of a in l i ∨ l j (resp. l i ∧ l j ) is the join (resp. meet) of the status of a in l i and the status of a in l j . That is, (l i ∨ l j )(a) = l i (a) ∨ S l j (a) and (l i ∧ l j )(a) = l i (a) ∧ S l j (a).

For example, consider LS the lattice of Fig. 2c, and licenses l i and l j defined previously; l i R l j because l i (read ) S l j (read ), l i (modify) S l j (modify) and l i (distribute) S l j (distribute). In this example, l i ∨ l j = l j because ∀a ∈ A, (l i ∨ l j )(a) = l j (a), e.g., (l i ∨ l j )(distribute) = l j (distribute) = P rohibition. If for an action, it is not possible to say which license is the most restrictive then the compared licenses are not comparable by the restrictiveness relation.

Remark 1

The pair (L A,LS , R ) is a restrictiveness lattice of licenses, whose ∨ and ∧ are respectively the join and meet operators.

In other words, for two licenses l i and l j , l i ∨ l j (resp. l i ∧ l j ) is the least (resp. most) restrictive license that is more (resp. less) restrictive than both l i and l j .

Remark 2 For an action a ∈ A, we call (L {a},LS , R ) the action lattice of a. Remark that (L A,LS , R ) and a∈A (L {a},LS , R ) are isomorphic. That is, a restrictiveness lattice of licenses can be generated through the coordinatewise product [START_REF] Davey | Introduction to Lattices and Order[END_REF] of all its action lattices. The total number of licenses in this lattice is |LS| |A| .

For example, consider A = {read , modify}, LS the lattice of Fig. 2a,(L A 3a,b,c illustrates the product of these action lattices and the produced restrictiveness lattice of licenses.

,LS , R ) is isomorphic to (L {read},LS , R )×(L {modify},LS , R ). Figure
To identify the compatibility relation among licenses and to distinguish valid licenses from non-valid ones it is necessary to take into account the semantics of actions. Thus, we apply two types of constraints to the restrictiveness lattice of licenses: license constraints and compatibility constraints.

Definition 4 (License constraint).

Let L A,LS be a set of licenses. A license constraint is a function ω L : L A,LS → Boolean which identifies if a license is valid or not.

For example, the license constraint ω L1 considers a license l i ∈ L A,LS non-valid if read is prohibited but modification is permitted (i.e., a modify action implies a read action):

ωL 1 (li) =
F alse if li(read ) = Prohibition and li(modify) = Permission; T rue otherwise.

Definition 5 (Compatibility constraint).

Let (L A,LS , R ) be a restrictiveness lattice of licenses. A compatibility constraint is a function ω → : L A,LS × L A,LS → Boolean which constraints the restrictiveness relation R to identify compatibility relations among licenses.

For example, consider that a license prohibits the action modify. In the spirit of DerivativeWork, we consider that the distribution of the modified resource under a different license is prohibited. Thus, the compatibility constraint ω →1 , considers that a restrictiveness relation l i R l j can be also a compatibility relation if l i does not prohibit modify. This constraint is described as:

For li, lj ∈ LA,LS ,

ω→ 1 (li, lj) = F alse if li(modify) = Prohibition; T rue otherwise.
Now we are able to define a CaLi ordering from a restrictiveness lattice of licenses and constraints defined before.

Definition 6 (CaLi ordering).

A CaLi ordering is a tuple A, LS, C L , C → such that A and LS form a restrictiveness lattice of licenses (L A,LS , R ), C L is a set of license constraints and C → is a set of compatibility constraints. For two licenses l i R l j ∈ L A,LS , we say that l i is compatible with l j , denoted by

l i → l j , if ∀ω L ∈ C L , ω L (l i ) = ω L (l j ) = T rue and ∀ω → ∈ C → , ω → (l i , l j ) = T rue.
Remark 3 We define the compliance relation as the opposite of the compatibility relation. For two licenses l i , l j , if l i → l j then l j is compliant with l i .

A CaLi ordering is able to answer our research question, given a license l i , how to automatically position l i over a set of licenses in terms of compatibility and compliance? It allows to evaluate the potential reuse of a resource depending on its license. Knowing the compatibility of a license allows to know to which extent the protected resource is reusable. On the other hand, knowing the compliance of a license allows to know to which extent other licensed resources can be reused. Next section shows an example of CaLi ordering.

Example 1

Consider a CaLi ordering A, LS, {ω L1 }, {ω →1 } such that:

-A is the set of actions {read, modify}, -LS is a restrictiveness lattice of status where an action can be either permitted or prohibited, and P ermission S P rohibition (cf Fig. 2a), ω L1 is the license constraint introduced in the example of Def. 4, and ω →1 is the compatibility constraint introduced in the example of Def. 5. is the has license relation such that {r 1 , r 2 } l 1 ; r 3 l 3 ; {r 4 , r 5 } l 4 . Thanks to our CaLi ordering, next questions can be answered.

-Which licensed resources can be reused in a resource that has as license l 3 ?

Those resource whose licenses are compatible with l 3 : r 1 and r 2 that have license l 1 which precedes l 3 , as well as r 3 that has the license l 3 itself. -Which licensed resources can reuse a resource that has as license l 1 ? Those resource whose licenses are compliant with l 1 : r 3 , r 4 and r 5 that have licenses l 3 and l 4 which follow l 1 , as well as r 1 and r 2 that have the license l 3 itself.

Resulting licenses can be returned ordered in a graph of compatibility. We illustrated CaLi with a simple restrictiveness lattice of status, next section introduces a more realistic CaLi ordering inspired by licenses of Creative Commons.

A CaLi ordering for Creative Commons

Creative Commons proposes 7 licenses that are legally verified, free of charge, easy-to-understand and widely used when publishing resources on the Web. These licenses use 7 actions that can be permitted, required or prohibited. In this CaLi example, we search to model a complete compatibility ordering of all possible valid licenses using these 7 actions.

Description of a CC ordering based on CaLi

Consider CC_CaLi, a CaLi ordering A, LS, C L , C → such that:

-A is the set of actions {cc:Distribution, cc:Reproduction, cc:DerivativeWorks, cc:CommercialUse, cc:Notice, cc:Attribution, cc:ShareAlike}, -LS is the restrictiveness lattice of status depicted in 2b 23 , and -C L , C → are the sets of constraints defined next.

C L = {ω L2 , ω L3 } allows to invalidate a license (1) when cc:CommercialUse is required and (2) when cc:ShareAlike is prohibited:

ωL 2 (li) = F alse if li(cc:CommercialUse) = Duty; T rue otherwise. ωL 3 (li) = F alse if li(cc:ShareAlike) = Prohibition; T rue otherwise.
C → = {ω →2 , ω →3 } allows to identify (1) when cc:ShareAlike is required and (2) when cc:DerivativeWorks is prohibited. That is because cc:ShareAlike requires that the distribution of derivative works be under the same license only, and cc:DerivativeWorks, when prohibited, does not allow the distribution of a derivative resource, regardless of the license. Other constraints could be defined to be closer to the CC schema 24 but for the purposes of this compatibility ordering these constraints are enough.

Analysis of CC_CaLi

The size of the restrictiveness lattice of licenses is 3 7 but the number of valid licenses of CC_CaLi is 972 due to C L . That is, 5 actions in whatever status and 2 actions (cc:CommercialUse and cc:ShareAlike) in only 2 status: 3 5 * 2 2 .

Implementation of CaLi orderings

The goal of this section is twofold, to analyse the algorithm we implemented to produce CaLi orderings and to illustrate the usability of CaLi through a prototype of a license-based search engine.

Experimental validation

The size growth of CaLi orderings is exponential, i.e., |LS| |A| . Nevertheless, it is not necessary to explicitly build a CaLi ordering to use it. Sorting algorithms like insertion sort can be used to produce subgraphs of a CaLi ordering.

We implemented an algorithm that can sort any set of licenses using the LS of Fig. 2c in n-1 i=0 i = n(n-1) 2 comparisons of restrictiveness (approx. n 2 /2), n being the number of licenses to sort, i.e., O(n 2 ). The goal is to be able to insert a license in a graph in linear time O(n) without sorting again the graph.

We use a heuristic, based on the restrictiveness of the new license, to chose between two strategies, 1) to insert a license traversing the graph from the minimum or 2) from the maximum. To do this, our algorithm calculates the relative position of the new license (node) from the number of actions that it obliges and prohibits. The median depth (number of levels) of the existing graph is calculated from the median of the number of prohibited and obliged actions of existing licenses. Depending on these numbers, a strategy is chosen to find the place of the new license in the graph.

Results shown in Fig. 5 demonstrate that our algorithm sorts a set of licenses with at most n 2 /2 comparisons. We used 20 subsets of licenses of different sizes from the CC_CaLi ordering. Size of subsets was incremented by 100 up to 2187 licenses. Each subset was created and sorted 3 times randomly. The curve was produced with the average of the number of comparisons to sort each subset.

A comparison of restrictiveness takes on average 6 milliseconds 25 , thus to insert a license in a 2000 licenses graph takes an average of 12 seconds. Building a whole graph is time consuming (a 2000 licenses graph takes on average 8 hours to sort) but this time can be reduced with further optimisations of the process to compare the restrictiveness of two licenses. The implementation in Python of our algorithm and details of our experiments are available on GitHub26 .

A search engine based on an ODRL CaLi ordering

We implemented a prototype of a search engine that allows to find linked data27 and source code repositories28 based on the compatibility or the compliance of their licenses. We use licenses described with the ODRL vocabulary. ODRL proposes properties to define semantic dependencies among actions29 that we translate as CaLi constraints. Included In is defined as "An Action transitively asserts that another Action encompasses its operational semantics". Implies is defined as "An Action asserts that another Action is not prohibited to enable its operational semantics". Thereby we consider that if an action a i is included in another action a j then a i implies a j . For example, CommercialUse is included in use, therefore we consider that CommercialUse implies use. That means that if CommercialUse is permitted then use should be permitted too. To preserve this dependency we implemented the constraint ω L4 . We use ODRL_CaLi, a CaLi ordering A, LS, C L , C → such that:

-A is the set of 72 actions of ODRL, -LS is the restrictiveness lattice of status of Fig. 2c, -C

L = {ω L2 , ω L3 , ω L4 }, and -C → = {ω →2 , ω →3 }.
The size of this ordering is 4 72 and it is not possible to build it. This search engine illustrates the usability of ODRL_CaLi through two subgraphs. On the one side, there is a subgraph with the most used licenses in DataHub 30 and OpenDataSoft. Licenses in this graph are linked to some RDF datasets such that it is possible to find datasets whose licenses are compatible (or compliant) with a particular license. On the other side, there is a subgraph with the most used licenses in GitHub. Here, licenses are linked to some GitHub repositories and it is possible to find repositories whose licenses are compatible (or compliant) with a particular license.

Discussion The model we propose uses restrictiveness as the basis to define compatibility and compliance among licenses. This strategy works most of the time, as we have shown in this paper, but it has certain limitations. In particular, CaLi is not designed to define the compatibility of two licences if it is not coherent with their restrictiveness relation. As an example consider two versions of MPL licenses. Version 2.0 relaxes some obligations compared to version 1.1. Thus, MPL-2.0 is less restrictive than MPL-1.1. With CaLi constraints, it can only be possible to say that MPL-2.0 is compatible with MPL-1.1. But in the legal texts it is said the opposite, i.e., MPL-1.1 is compatible with MPL-2.0.

Thereby, particularities in the usage of compatibility of licenses, the granularity of the semantisation of licenses and the understanding of some actions (like ShareAlike) are the main reasons of the difference between CaLi orderings and other classifications. This is the case, for instance, of our compatibility graph devoted to licenses of GitHub and the graph presented in [START_REF] Kapitsaki | Automating the License Compatibility Process in Open Source Software With SPDX[END_REF].

Conclusions and perspectives

We proposed a lattice-based model to define compatibility and compliance relations among licenses. Our approach is based on a restrictiveness relation that is refined with constraints to take into account the semantics of actions existing in licenses. We have shown the feasibility of our approach through two CaLi orderings, one using the Creative Commons vocabulary and the second using ODRL. We experimented the production of CaLi orderings with the implementation of an insertion sort algorithm whose cost is n 2 /2. We implemented a prototype of a license-based search engine that highlights the feasibility and usefulness of our approach. Our compatibility model does not intent to provide a legal advice but it allows to exclude those licenses that would contravene a particular license.

A perspective of this work is to take into account other aspects of licenses related to usage contexts like jurisdiction, dates of reuse, etc. Another perspective is to analyse how two compatibility orderings can be compared. That is, given two CaLi orderings, if there is an alignment between their vocabularies and their restrictiveness lattices of status are homomorphic then find a function to pass from a CaLi ordering to another.

Fig. 1 :

 1 Fig. 1: Three Creative Commons licenses described in RDF.

Fig. 2 :

 2 Fig. 2: Examples of restrictiveness lattices of status (LS). Dashed arrows represent restrictiveness, e.g., in (a) Permission is less restrictive than Prohibition.

Fig. 3 :

 3 Fig. 3: (a) and (b) are the action latices (L {read},LS , R) and (L {modify},LS , R), where A = {read , modify} and LS is the lattice of Fig. 2a (Pr=Prohibition and P=Permission). The product of these action lattices gives the restrictiveness lattice of licenses (c) (LA,LS , R) (reflexive relations are not represented). (d) is the CaLi ordering A, LS, {ωL 1 }, {ω→ 1 } .

Fig. 3d shows

  Fig. 3d shows a visual representation of this CaLi ordering. Licenses in grey are identified as non-valid by ω L1 . They are part of the ordering but cannot protect resources. Dashed arrows represent restrictiveness relations R . Black arrows represent restrictiveness relations that are also compatibility relations. Consider a set of resources R = {r 1 , r 2 , r 3 , r 4 , r 5 }.is the has license relation such that {r 1 , r 2 } l 1 ; r 3 l 3 ; {r 4 , r 5 } l 4 . Thanks to our CaLi ordering, next questions can be answered.

ω→ 2 (

 2 li, lj) = F alse if li(cc:ShareAlike) = Duty; T rue otherwise. ω→ 3 (li, lj) = F alse if li(cc:DerivativeWorks) = Prohibition; T rue otherwise.

Fig. 4 :

 4 Fig. 4: Compatibility subgraphs of CC_CaLi: (a) contains the 7 official CC licenses and (b) contains CC l1 to CC l4 in addition to the 7 official CC licenses.

Fig. 5 :

 5 Fig. 5: Performance of the implemented insertion sort algorithm in number of comparisons of restrictiveness with incremental size of subsets of licenses.

F

  alse if ai odrl:includedIn aj AND (li(ai) = Permitted OR li(ai) = Obliged) AND li(aj) = Prohibited; T rue otherwise.

https://creativecommons.org/ns

https://ns.inria.fr/l4lod/

https://tldrlegal.com/

https://creativecommons.org/choose/

https://choosealicense.com/

https://ccsearch.creativecommons.org/

http://www.web2rights.com/creativecommons/

http://licentia.inria.fr/

http://rdflicense.appspot.com/rdflicense

https://www.dalicc.net/license-library

https://www.w3.org/TR/odrl-vocab/#term-derive

https://www.w3.org/TR/odrl-vocab/#term-DerivativeWorks

https://github.com/benjimor/CaLi-Search-Engine

http://cali.priloo.univ-nantes.fr/ld/

http://cali.priloo.univ-nantes.fr/rep/

https://www.w3.org/TR/odrl-vocab/#actionConcepts

Acknowledgments Authors thank Margo Bernelin and Sonia Desmoulin-Canselier (laboratory of Droit et Changement Social -UMR CNRS 6297) for our helpful discussions on this work.

://github.com/ 4 //apis.io/ 5

The following CC_CaLi licenses are like the official CC licenses. The following CC_CaLi licenses are not part of the official CC licenses. License CC l 1 is like CC BY-NC but without the obligation to give credit to the copyright holder/author of the resource. CC l 2 is like CC BY but with the prohibition of making multiple copies of the resource. License CC l 3 allows only exact copies of the original resource to be distributed. CC l 4 is like CC l 3 with the prohibition of commercial use. In CC_CaLi, the minimum is the license where all actions are permitted (i.e., CC Zero) and the maximum is the license where all actions are prohibited.

Fig. 4 shows two subgraphs of CC_CaLi with only the compatibility relations. Fig. 4a shows only the 7 official CC licenses and Fig. 4b includes also CC l 1 to CC l 4 . These graphs can be generated using the CaLi implementation (cf Section 5). Thanks to ω →2 , the restrictiveness relation between CC BY-SA and CC BY-NC-SA is not identified as a compatibility relation and thanks to ω →3 , the restrictiveness relation between CC BY-ND and CC BY-NC-ND is not identified as a compatibility relation. We recall that a license that prohibits cc:DerivativeWorks is not compatible even with itself.

The compatibility relations of Fig. 4a are conform to the ones obtained from the Web2rights tool. This example shows the usability of CaLi with a real set of licenses.


M Genet
email: martin.genet@polytechnique.edu

A relaxed growth modeling framework for controlling growth-induced residual stresses

Keywords: Finite growth, Residual stresses, Relaxation, Finite element method (Total word count: ca. 3000.)

A relaxed growth modeling framework for controlling growth-induced residual stresses

tion arises pertaining to residual stresses: existing growth models inevitably introduce residual stresses, but it is not entirely clear if this is physiological or merely an artifact of the modeling framework. As a consequence, in simulating growth, some authors have chosen to keep growth-induced residual stresses, and others have chosen to remove them.

Methods. In this paper, we introduce a novel "relaxed growth" framework allowing for a fine control of the amount of residual stresses generated during tissue growth. It is a direct extension of the classical framework of the multiplicative decomposition of the transformation gradient, to which an additional sub-transformation is introduced in order to let the original unloaded configuration evolve, hence relieving some residual stresses. We provide multiple illustrations of the framework mechanical response, on time-driven constrained growth as well as the strain-driven growth problem of the artery under internal pressure, including the opening angle experiment.

Findings. The novel relaxed growth modeling framework introduced in this paper allows for a better control of growth-induced residual stresses compared to standard growth models based on the multiplicative decomposition of the transformation gradient.

Introduction

Biomechanical models are widely considered as good candidates to improve patient diagnosis and treatment of various diseases, for instance in vascular [START_REF] Taylor | Patient-specific modeling of cardiovascular mechanics[END_REF], cardiac [START_REF] Smith | euHeart: Personalized and integrated cardiac care using patient-specific cardiovascular modelling[END_REF][START_REF] Krishnamurthy | Patient-Specific Models of Cardiac Biomechanics[END_REF], or respiratory [START_REF] Roth | Computational modelling of the respiratory system: Discussion of coupled modelling approaches and two recent extensions[END_REF] mechanics. To do so, these models must first be formulated with patient-agnostic constitutive laws and parameters that are developed alongside with experiments. And once these generic models are set up, clinical data must be assimilated into to personalize them and hence produce diagnosis [START_REF] Xi | Myocardial transversely isotropic material parameter estimation from insilico measurements based on a reduced-order unscented Kalman filter[END_REF]Genet et al., 2015a] and/or perform in silico treatment optimization [START_REF] Sermesant | Patient-specific electromechanical models of the heart for the prediction of pacing acute effects in CRT: A preliminary clinical validation[END_REF].

Today, most personalized modeling pipelines focus on the current state of the tissue/organ, and few work focused on predicting the long term evolution of the system of interest, i.e., prognosis [START_REF] Clatz | Realistic simulation of the 3-D growth of brain tumors in MR images coupling diffusion with biomechanical deformation[END_REF][START_REF] Rausch | A virtual sizing tool for mitral valve annuloplasty[END_REF]. Similarly, constitutive models of the mechanical response of soft tissues have been established and are widely accepted in the community, but models of soft tissues remodeling are more controversial [START_REF] Witzenburg | A Comparison of Phenomenologic Growth Laws for Myocardial Hypertrophy[END_REF]. This is explained by the increased complexity and associated decreased understanding of the physical mechanisms at play during remodeling. Specifically for growth, a remodeling mechanism associated with the addition and/or removal of matter with unchanged properties [START_REF] Taber | Biomechanics of Growth, Remodeling, and Morphogenesis[END_REF][START_REF] Kuhl | Growing matter: A review of growth in living systems[END_REF], there are competing approaches for the very description of growth (multiplicative decomposition of the transformation gradient [START_REF] Rodriguez | Stress-dependent finite growth in soft elastic tissues[END_REF][START_REF] Kuhl | Growing matter: A review of growth in living systems[END_REF] vs. constrained mixture theory [START_REF] Humphrey | A constrained mixture model for growth and remodeling of soft tissues[END_REF][START_REF] Valentín | Constrained Mixture Models as Tools for Testing Competing Hypotheses in Arterial Biomechanics: A Brief Survey[END_REF][START_REF] Cyron | A homogenized constrained mixture (and mechanical analog) model for growth and remodeling of soft tissue[END_REF]), the growth driving force (chemistry vs. mechanics [START_REF] Maillet | Molecular basis of physiological heart growth: Fundamental concepts and new players[END_REF][START_REF] Kuhl | Growing matter: A review of growth in living systems[END_REF], strain vs. stress [START_REF] Rodriguez | Stress-dependent finite growth in soft elastic tissues[END_REF][START_REF] Göktepe | A generic approach towards finite growth with examples of athlete's heart, cardiac dilation, and cardiac wall thickening[END_REF][START_REF] Kerckhoffs | A single strainbased growth law predicts concentric and eccentric cardiac growth during pressure and volume overload[END_REF], static vs. oscillatory loading [START_REF] Maillet | Molecular basis of physiological heart growth: Fundamental concepts and new players[END_REF][START_REF] Lee | An integrated electromechanical-growth heart model for simulating cardiac therapies[END_REF], etc.). Nevertheless, the next generation of personalized modelingbased clinical tools might include remodeling mechanisms such as growth for prognosis and treatment optimization.

One important question associated with the modeling of growth is about the induced residual stresses, or equivalently, prestrain. On the one hand they are present in living tissues [START_REF] Fung | Biomechanics[END_REF], on the other hand growth naturally induces residual stresses [START_REF] Rodriguez | Stress-dependent finite growth in soft elastic tissues[END_REF][START_REF] Skalak | Compatibility and the genesis of residual stress by volumetric growth[END_REF]; however it is still largely unknown how much of the residual stresses induced by the physiological or pathological growth remain, and how much are relaxed away by some relaxation mechanism [START_REF] Fung | Biomechanics[END_REF][START_REF] Taber | Biomechanics of Growth, Remodeling, and Morphogenesis[END_REF]. Actually, it was found experimentally, in studies involving hypertension-induced pathological growth of cardiovascular tissues, that opening angle, and hence residual stresses, were only very little correlated with growth [START_REF] Liu | Relationship between hypertension, hypertrophy, and opening angle of zero-stress state of arteries following aortic constriction[END_REF][START_REF] Omens | Transmural Changes in Stress-free Myocyte Morphology During Pressure Overload Hypertrophy in the Rat[END_REF]. As a consequence, in growth models of the literature, some authors have chosen to keep growth-induced residual stresses [START_REF] Rodriguez | Stress-dependent finite growth in soft elastic tissues[END_REF][START_REF] Lee | A computational model that predicts reverse growth in response to mechanical unloading[END_REF]Genet et al., 2015b], and others have chosen to remove them [START_REF] Kroon | Computational modeling of volumetric soft tissue growth: Application to the cardiac left ventricle[END_REF][START_REF] Lee | An integrated electromechanical-growth heart model for simulating cardiac therapies[END_REF][START_REF] Lee | Physics-based computer simulation of the long-term effects of cardiac regenerative therapies[END_REF]. Other approaches have been proposed to better deal with growth-induced residual stresses, notably a recent growth modeling framework that include some "fluid-like" growth [START_REF] Böl | On a new model for inhomogeneous volume growth of elastic bodies[END_REF][START_REF] Bolea Albero | A new approach to the simulation of microbial biofilms by a theory of fluid-like pressure-restricted finite growth[END_REF].

In this paper, we introduce a novel "relaxed growth" model, in the general framework of the multiplicative decomposition of the transformation gradient, which allows one to control the amount of growth-induced residual stresses. The general idea is to add another sub-transformation in the decomposition, which relaxes the tissue by transforming its unloaded configuration. Illustrations are provided on time-driven constrained growth as well as the strain-driven growth problem of the artery under internal pressure.

Methods

Review of classical growth modeling

Kinematics

In this part, we review the standard formulation of finite growth modeling based on the multiplicative decomposition of the transformation gradient, originally proposed by [START_REF] Rodriguez | Stress-dependent finite growth in soft elastic tissues[END_REF], and illustrated on Figure 1. Thus, let us consider a physical body B that initially occupies a domain Ω 0 and that, after deformation and growth, occupies a domain Ω. The geometrical transformation between material neighborhoods of B in Ω 0 and

L o a d in g E l a s t i c G r o w t h F u ll G r

o w t h -I n d u c e d p r e s t r a i n

Reference configuration

Grown loaded configuration

I n i t i a l p r e s t r a i n

Grown (incompatible) configuration

Grown unloaded (compatible) configuration

Stress-free (incompatible) configuration

Figure 1: Schematic of the multiplicative decomposition of the transformation gradient into growth, prestrain and loading parts, revealing the elastic part of the transformation [START_REF] Rodriguez | Stress-dependent finite growth in soft elastic tissues[END_REF]. Because the growth part represents the transformation of material neighborhoods independently from each others and hence is incompatible (i.e., does not derive from a continuous mapping), the grown configuration is incompatible (i.e., discontinuous everywhere). Consequently, the prestrain and elastic parts of the transformation are also incompatible. Conversely, both the full transformation and the loading part of the transformation are compatible, though if the loading part does represent a continuous mapping between material points, the full transformation only represents a continuous mapping between material neighborhoods, in which mass has potentially been added or removed. This decomposition is generally represented without initial prestrain, i.e., with

F 0 = 1, in which case F g0 = 1 and F p0 = F p , such that F e = F ′ .
Ω is denoted Φ. Following the classical scheme of Figure 1, the transformation gradient F := Grad (Φ) is multiplicatively decomposed into growth, prestrain, and load-induced parts:

F = F l • F p • F g , (1)
where, in general, both F g (the internal variable describing tissue growth)

and F p (the prestrain) are incompatible second order tensor fields, and

F l := Grad Φ l
is the gradient of the (compatible) transformation induced by mechanical loading. The prestrain and load-induced parts can be multiplicatively combined to form the elastic part of the transformation:

F ′ := F l • F p , (2)
such that the full transformation gradient can be multiplicatively decomposed into growth and elastic parts:

F = F ′ • F g . (3)
Equivalently, the elastic part of the transformation can be expressed from the full transformation gradient and the growth internal variable:

F ′ = F • F g-1 . (4)
The full right Cauchy-Green dilatation tensor is denoted C := t F • F . As for the transformation gradient, the elastic part of the dilatation tensor can be expressed from the full dilatation tensor and the growth internal variable:

C ′ := t F ′ • F ′ = t F g-1 • C • F g-1 .
(5)

Free energy and Stresses

The elastic response is governed by the strain energy potential, W e . Any hyperelastic potential can be used. The main modeling assumption is that in fine the free energy ρ 0 Ψ is not a function of the total transformation but only its elastic part F e [START_REF] Rodriguez | Stress-dependent finite growth in soft elastic tissues[END_REF][START_REF] Göktepe | A generic approach towards finite growth with examples of athlete's heart, cardiac dilation, and cardiac wall thickening[END_REF]:

ρ 0 Ψ C, F g = W e C e := t F e • F e . (6)
Consequently, the second Piola-Kirchhoff stress tensor can be expressed as

Σ = ∂ρ 0 Ψ ∂E = 2 ∂ρ 0 Ψ ∂C = 2 ∂W e ∂C e : ∂C e ∂C . (7)
In the canonical case described so far, we have

F e = F ′ = F • F g-1 , (8)
such that

C e = C ′ = t F g-1 • C • F g-1 , (9)
and

Σ = F g-1 • 2 ∂W e ∂C e • t F g-1 .
(10)

Growth evolution law

An evolution law must be formulated for the growth tensor to close the system. Several types have been proposed, including simple rates [START_REF] Kuhl | Growing matter: A review of growth in living systems[END_REF], strain- [START_REF] Göktepe | A generic approach towards finite growth with examples of athlete's heart, cardiac dilation, and cardiac wall thickening[END_REF][START_REF] Kerckhoffs | A single strainbased growth law predicts concentric and eccentric cardiac growth during pressure and volume overload[END_REF][START_REF] Genet | Modeling Pathologies of Diastolic and Systolic Heart Failure[END_REF] and stress- [START_REF] Göktepe | A generic approach towards finite growth with examples of athlete's heart, cardiac dilation, and cardiac wall thickening[END_REF] driven laws. See for instance [START_REF] Kuhl | Growing matter: A review of growth in living systems[END_REF] for a recent review, and [START_REF] Witzenburg | A Comparison of Phenomenologic Growth Laws for Myocardial Hypertrophy[END_REF] for a detailed comparison of existing laws.

In case of tissues subjected to cyclic loading, it is necessary to uncouple the temporal scales of loading and remodeling, by alternating between loading (i.e., fast time scale) and growth (i.e., slow time scale) steps [START_REF] Kerckhoffs | A single strainbased growth law predicts concentric and eccentric cardiac growth during pressure and volume overload[END_REF][START_REF] Lee | Physics-based computer simulation of the long-term effects of cardiac regenerative therapies[END_REF]. Thus, for a given growth step, the driving force for growth must be computed from the previous loading step. Average [START_REF] Lee | An integrated electromechanical-growth heart model for simulating cardiac therapies[END_REF] and maximum [START_REF] Kerckhoffs | A single strainbased growth law predicts concentric and eccentric cardiac growth during pressure and volume overload[END_REF] values of stress and strain over a cycle have been proposed, in agreement with experimental analysis [START_REF] Holmes | Candidate mechanical stimuli for hypertrophy during volume overload[END_REF].

Case of initially prestrained material

For the sake of completeness, let us consider the case where the initial configuration Ω 0 has some potentially incompatible initial prestrain, denoted F 0 , or, equivalently, some autobalanced initial prestress

σ 0 = 1 J 0 F 0 • Σ 0 • F 0 -1 with J 0 := det F 0 and Σ 0 = 2 ∂ρ 0 W e ∂C e C e = C 0 where C 0 := t F 0 • F 0 (See
Figure 1). Note that here, the prestrain must be seen as a local tensor state variable more than a gradient of some mapping. And in this case, the full elastic transformation, F e , contains both F ′ and the prestrain F 0 :

F e = F • F 0 • F g-1 , (11)
such that the free energy is

ρ 0 Ψ C, F g , F 0 = W e C e = t F g-1 • t F 0 • C • F 0 • F g-1 , (12)
and the second Piola-Kirchhoff stress tensor is

Σ = F 0 • F g-1 • 2 ∂W e ∂C e • t F g-1 • t F 0 . ( 13
)
It is also interesting to express the prestrain in the grown configuration Ω g :

F g0 := F g • F 0 • F g-1 , (14)
such that the full elastic transformation can also be expressed as

F e = F ′ • F g0 . (15)
Similarly, the total prestrain in the new grown unloaded configuration Ω p is

F p0 := F p • F g0 = F p • F g • F 0 • F g-1 , (16)
such that the full elastic transformation can also be expressed as

F e = F l • F p0 . ( 17
)

Relaxed growth modeling

Kinematics

We now describe a new formulation for finite growth, involving an additional internal sub-transformation for local relaxation. The associated schematic is represented on the Figure 2. The total transformation gradient is now decomposed into growth, relaxation, prestrain and loading parts:

F = F l • F p • F r • F g , (18)
where, again, both F g (the internal variable describing tissue growth), F r (the internal variable describing tissue relaxation) and F p (the prestrain) are incompatible second order tensor fields, and F l := Grad Φ l is the gradient of the (compatible) transformation induced by mechanical loading. The elastic part of the transformation is still such that

F ′ := F l • F p , (19)
F = F ′ • F r • F g . ( 20
)
Thus, here the elastic part of the transformation can be expressed from the full transformation gradient, and both the growth and relaxation internal variables:

F ′ := F • F g-1 • F r-1 . ( 21
)
Let us point out that the order of the decomposition is arbitrary.

The role of the relaxation is to update the unloaded configuration of the grown body in order to control the amount of growth-induced residual stresses. Thus, the updated unloaded configuration is now Ω p , with prestrain

F p0 := F p • F r0 , (22)
where

F r0 := F r • F g0 • F r-1 , (23)
and

F g0 := F g • F 0 • F g-1 .
(24)

Free energy and Stresses

As for simple growth, we assume that the free energy ρ 0 Ψ is only a function of the elastic part of the transformation F e , see Equation ( 6). However, in the case of relaxed growth, we have

F e = F ′ • F r0 = F • F 0 • F g-1 • F r-1 , (25)
such that

C e = t F r-1 • t F g-1 • t F 0 • C • F 0 • F g-1 • F r-1 , (26)
and

Σ = F 0 • F g-1 • F r-1 • 2 ∂W e ∂C e • t F r-1 • t F g-1 • t F 0 . (27)
Similarly, for the unloaded configuration the total elastic deformation is simply

F p0 = F u • F 0 • F g-1 • F r-1 , (28)
such that

C p0 := t F p0 • F p0 = t F r-1 • t F g-1 • t F 0 • C u • F 0 • F g-1 • F r-1 , (29)
and

Σ u = F 0 • F g-1 • F r-1 • 2 ∂W e ∂C p0 • t F r-1 • t F g-1 • t F 0 . (30)

Relaxation evolution law

As for the growth evolution, many choices can be made for the evolution of the relaxation internal variable. Since the role of the relaxation is to regulate the prestrain, in this article we will consider the simplest possible evolution law, directly based on the current prestrain level:

Ḟ r = 1 τ r • E p0 , (31)
where τ r is a characteristic time for relaxation, and

E p0 := 1 2 C p0 -1 is
the Green-Lagrange prestrain. The underlying hypothesis is that the tissue is somehow able to sense the current level of prestrain. This is analogous to the hypothesis made in constrained mixture theory-based growth models, where newly deposited matter has its own reference state that can be the one of the surrounding matter, the current state of deformation, or a combination of both [START_REF] Valentín | A finite element-based constrained mixture implementation for arterial growth, remodeling, and adaptation: Theory and numerical verification[END_REF][START_REF] Cyron | A homogenized constrained mixture (and mechanical analog) model for growth and remodeling of soft tissue[END_REF].

Numerical resolution

The relaxed growth problem can be solved like any nonlinear problem with internal variables in mechanics. The only subtlety here is induced by the choice of the relaxation evolution law, which requires the computation of the new unloaded configuration together with the loaded configuration.

We propose a mixed formulation of the problem, the unknowns being U (the total displacement), U u (the displacement of the unloaded configuration), F g (the growth tensor) and F r (the relaxation tensor). After quasi-static assumption, and implicit, mid-point rule temporal discretization, the mixed variational formulation of the problem to solve at each time step is:

                         Ω 0 Σ : d U ;U * E dΩ 0 = W e (U ; U * ) ∀U * (32a) Ω 0 Σ u : d U u ;U u * E u dΩ 0 = 0 ∀U u * (32b) Ω 0 F g -F g,old + Ḟ g,mid ∆t : F g * dΩ 0 = 0 ∀F g * (32c
)

Ω 0 F r -F r,old + Ḟ r,mid ∆t : F r * dΩ 0 = 0 ∀F r * (32d)
where d U ;U * E and d U u ;U u * E u denote the first variations of the total and unloaded Green-Lagrange strain tensors with respect to the total and unloaded displacements, and W e denotes the virtual work (semi-linear form) associated to external loads. Ḟ g,mid will be specified for each growth evolution law, and relaxation evolution law (31) leads to:

Ḟ r,mid = 1 τ r E mid p0 (33) with E mid p0 = 1 2 E old p0 + E p0 .
In case of incompressible elastic deformation, two new unknowns are introduced: p (the Lagrange multiplier associated to the incompressibility constraint of the elastic strain, equal to the hydrostatic pressure within the tissue) and p u (the Lagrange multiplier/hydrostatic pressure in the unloaded configuration), and the full mixed variational formulation becomes:

                                           Ω 0 Σ -pJ e C e-1 : d U ;U * E dΩ 0 = W e (U ; U * ) ∀U * (34a) Ω 0 (J e -1) p * dΩ 0 = 0 ∀p * (34b) Ω 0 Σ u -p u J p0 C p0 -1 : d U u ;U u * E u dΩ 0 = 0 ∀U u * (34c) Ω 0 (J p0 -1) p u * dΩ 0 = 0 ∀p u * (34d) Ω 0 F g -F g,old + Ḟ g,mid ∆t : F g * dΩ 0 = 0 ∀F g * (34e
)

Ω 0 F r -F r,old + Ḟ r,mid ∆t : F r * dΩ 0 = 0 ∀F r * (34f)
Problems ( 32) and ( 34) are spatially discretized using the standard finite element method. Second order elements are used for displacement unknowns (both U & U u ), and first order elements for pressure unknowns (both p & p u ), preventing numerical locking in the incompressible limit [START_REF] Hughes | The Finite Element Method: Linear Static and Dynamic Finite Element Analysis[END_REF][START_REF] Chapelle | On the ellipticity condition for modelparameter dependent mixed formulations[END_REF]. First order elements are used for internal variables (both F g & F r ) as well.

The full scheme has been implemented in python, based on the FEniCS library [Logg et al., 2012;Alnaes et al., 2015], and is freely available1 .

Results

We will now present multiple illustrations of the relaxed growth response in 2D.

Model response: constrained growth

Let us first illustrate the constitutive behavior described by the relaxed growth model. To do so, we consider a single material point for which the total deformation is blocked to zero, and subjected to time-driven isotropic growth:

     F g = (1 + θ g ) 1 θ g (t = 0) = 0 θg = 1 τ g , (35)
where τ g is a characteristic time for growth. This growth evolution law leads, after temporal discretization, to the following expression:

Ḟ g,mid = 1 τ g 1 (36)
For the sake of simplicity, and to focus on the relaxed growth framework introduced in this paper, we consider a simple compressible neo-hookean strain energy potential under the plane strain assumption [START_REF] Ciarlet | Sur les lois de comportement en élasticité non-linéaire compressible[END_REF]:

W e C e = λ 4 J e2 -1 -2 ln J e + µ 2 tr C e -2 -2 ln J e , (37)
where λ & µ are the bulk and shear modulus, taken as unity. Compressible mixed variational formulation (32) is used, with evolution laws ( 33) & (36). This is the purest example of constrained growth. In case of simple growth, this would lead to the development of compressive residual stresses, which arise from constraining the grown tissue to its original volume. This

is also what happens in the relaxed growth framework; however, here the amount of growth-induced stresses is controlled by the ratio of the characteristic time of relaxation to the characteristic time of growth. If relaxation is much slower than growth, the response is similar to simple growth; conversely, if relaxation is much faster than growth, then constrained growth happens with almost no induced residual stress. This is well illustrated on the Figure 3, which shows the normalized (with respect to shear modulus) hydrostatic pressure within the material point as a function of normalized (with respect to growth time constant) time, for various ratios of relaxation over growth characteristic times. The relaxed growth framework allows to control the amount of growth-induced residual stresses in constrained growth.

A time-driven relaxed growth example: constrained vs. unconstrained growth

Let us now illustrate the relaxed growth response in a first structural case, inspired from [START_REF] Kuhl | Growing matter: A review of growth in living systems[END_REF]. Here we consider a simple square geometry, with three fixed boundaries (left, bottom and right) and one free boundary (top), subjected to the same time-driven growth (35). This case contains both constrained (toward the bottom, where the total strain is restricted, thus developing compressive residual stresses), and unconstrained (toward the top, where the free edge limits the stress level, and large strains will develop) growth [START_REF] Kuhl | Growing matter: A review of growth in living systems[END_REF]. In terms of elasticity, we now consider a simple incompressible neo-hookean strain energy potential under the plane strain assumption:

W e C e = µ 2 tr C e -2 , ( 38
)
where µ is the shear modulus, taken as unity, and use the incompressible mixed variational formulation (34) is used with evolution laws ( 33) & (36).

Normalized stress

Normalized time τ r /τ g = +∞ τ r /τ g = 1 τ r /τ g = 0.1 τ r /τ g = 0.01 τ r /τ g = 0.001 τ r /τ g = 0.0001 Figure 3: Relaxed growth material response under constrained growth: normalized (with respect to shear modulus) hydrostatic pressure within a material point as a function of normalized (with respect to growth time constant τ g ) time, for various ratios of relaxation over growth characteristic times. For slow relaxation (i.e., for large relaxation time constant τ r ), the model behaves as standard growth, with the development of residual stresses; conversely, for fast relaxation (i.e., for small relaxation time constant τ r ), constrained growth happens with almost no induced residual stresses. the level of growth-induced residual stresses varies drastically with the relaxation characteristic time: for very fast relaxation (compared to growth), the muffin grows without developing large residual stresses, even in the constrained region.

A strain-driven relaxed growth example: the artery

The final example is the canonical case of residual stresses in pressurized arteries. We start from a simple disc representing an unloaded, stress-free artery. The artery is loaded with some internal pressure, and allowed to grow and relax for some time while the internal pressure is maintained. Then, the loading is removed, and an opening angle experiment is simulated by making a radial cut in the model, and letting the artery spring open by releasing some residual stresses. Here we consider the simplest form of strain-driven growth evolution law:

     F g = (1 + θ g ) 1 θ g (t = 0) = 0 θg = E e τ g , (39)
where τ g still represents the growth time constant, and E e := 1 2 C e -1 is the Green-Lagrange elastic strain. This growth evolution law leads, after temporal discretization, to the following expression:

Ḟ g,mid = E e,mid τ g 1 (40)

We use the incompressible neo-hookean strain energy potential (38), and the incompressible mixed variational formulation (34) with evolution laws ( 33) & (40).

Discussion

In this paper, we introduced a novel "relaxed growth" framework allowing for a fine control of the amount of residual stresses generated during tissue heterogeneous growth. It is a direct extension of the classical multiplicative decomposition of the transformation gradient framework [START_REF] Rodriguez | Stress-dependent finite growth in soft elastic tissues[END_REF], to which an additional sub-transformation is introduced in order to let the original unloaded configuration to evolve, hence relaxing away some of the residual stresses. To solve it numerically, we proposed here a monolithic mixed formulation, but a standard displacement formulation with internal variables could be used equivalently.

This work could be extended in multiple directions. Most and foremost, experimental characterization of the amount of residual stresses induced directly by physiological and/or pathological growth is required to provide elements of validation to relaxed growth models. Moreover, other relaxation evolution laws could be formulated and tested, especially in case of cyclic loading. 3D simulations could be run. More generally, since in the current numerical procedure both the deformed and unloaded configurations are computed at once, it is straightforward to stop the simulation, for instance when the total deformation becomes too important and the mesh too distorted, transfer all the fields to the new unloaded configuration, and restart from here. That way problems with extreme growth, for instance in organogenesis, could be tackled, with a clear control in both growth and growth-induced residual stresses. Finally, relaxed growth could be added personalized modeling pipelines, at both modeling and estimation steps, in order to make more objective and quantitative the handling of longitudinal clinical data, and design the next generation of diagnosis and treatment optimization tools.

Figure 2 :

 2 Figure 2: Schematic of the proposed multiplicative decomposition of the transformation gradient into growth, relaxation, prestrain and loading parts.

Figure 4

 4 Figure4shows the response of the tissue modeled by relaxed growth, as a function of normalized (with respect to growth time constant) time, and for various ratios of relaxation over growth characteristic times. Since growth is purely time-driven, the growth pattern is very similar in all cases. However,

Figure 5 Figure 4 :Figure 5 :

 545 Figure5shows the response of the artery over time, for various levels of relaxation characteristic times: it first inflates due to the applied pressure, grows, deflates as the pressure is removed, and springs open. Note that since residual stresses are here induced by heterogeneous, strain-driven growth described by growth evolution low (39), only a small amount of growth (with respect to the pressure-induced deformation) is required to generate realistic residual stresses, leading to physiological opening angles. This last example illustrates the fact that the relaxed growth model allows to control the opening angle (i.e., the residual stresses) induced by a given amount of growth.

https://gitlab.inria.fr/mgenet/dolfin_cm

Acknowledgements

MG would like to thank Prof. Lik Chuan Lee, from Michigan State University, USA, for helpful discussions throughout the development of this work.