The

QoSbox:

quantitative

service

differentiation

in

BSD

routers

We

describe

the

design

and

implementation

of

the

QoSbox,

a

configurable

IP

router

that

provides

per-hop

service

differentiation

on

loss,

delays

and

throughput

to

classes

of

traffic.

The

novel

aspects

of

the

QoSbox

are

that

the

QoSbox

does

not

rely

on

any

external

component

(e.g.,

no

traffic

shaping

and

no

admission

control)

to

provide

the

desired

service

differentiation,

but

instead,

dynamically

adapts

packet

forwarding

and

dropping

decisions

as

a

function

of

the

instantaneous

traffic

arrivals

and

allows

for

temporary

relaxation

of

some

service

objectives;

also,

the

QoSbox

can

enforce

both

absolute

and

proportional

service

differentiation

on

queuing

delays,

loss

rates,

and

throughput

at

the

same

time.

We

focus

on

a

publicly

available

implementation

of

the

QoSbox

in

BSD-based

PC-routers.

We

evaluate

our

implementation

in

a

testbed

of

BSD

routers

over

a

FastEthernet

network,

and

we

sketch

how

the

QoSbox

can

be

implemented

in

high

speed

architectures.

The

capacity

of

the

network

links

of

the

Internet

has

steadily

increased

in

the

past

decade,

and

has

mostly

resulted

in

an

increase

of

the

traffic

that

uses

these

links,

without

any

improvement

in

the

service

received..

Stated

differently,

increasing

the

capacity

of

the

network

far

beyond

what

is

needed

to

accomodate

typical

loads,

a

practice

known

as

overprovisioning,

does

not

always

translate

in

improved

quality-of-service

(QoS)..

order

of

several

gigabits

per

second,

at

the

expense

of

some

reduced

accuracy

in

the

service

differentiation..

Different

from

most

QoS

architectures,

the

QoSbox

does

not

rely

on

any

external

component

such

as

traffic

shaping

or

admission

control

to

enforce

the

desired

service

differentiation,

which

allows

for

deploying

a

network

of

QoSboxes

in

an

incremental

manner.

Instead,

the

QoSbox

dynamically

adapts

packet

forwarding

and

dropping

decisions

dependent

on

the

instantaneous

traffic

arrivals.

The

QoSbox

can

enforce

both

absolute

bounds

and

proportional

service

differentiation

on

queuing

delays,

loss

rates,

and

throughput

at

the

same

time.

Since

there

is

no

admission

control,

it

may

not

be

feasible

to

enforce

all

absolute

bounds

at

all

times,

in

which

case,

the

QoSbox

relaxes

some

bounds

according

to

an

order

specified

a

priori.

This

paper

is

organized

as

follows.

In

Section

we

present

an

overview

of

the

proposed

service

architecture,

and

describe

the

mechanisms

used

by

the

QoSbox.

In

Section

we

discuss

implementation

issues.

In

Section

we

assess

the

efficiency

of

the

QoSbox

in

a

testbed

of

PC-routers.

In

Section

we

present

the

related

work.

Finally,

we

summarize

the

current

status

of

the

project

and

draw

brief

conclusions

in

Section

Our

objective

is

to

provide

a

service

architecture

that

can

provide

strong

service

differentiation

in

a

largescale

network.

More

precisely,

we

want

the

service

architecture

to

have

the

following

properties:

it

must

be

deployable

in

an

incremental

manner,

without

ever

degrading

the

average

level

of

service

provided

in

the

network,

it

must

scale

to

networks

of

large

size,

and

it

must

support

quantitative

service

differentiation,

including

absolute

bounds..

To

meet

these

constraints,

we

propose

a

per-hop

service,

which

provides

service

differentiation

between

classes

of

traffic

flows

with

similar

service

requirements.

The

service

is

enforced

independently

at

each

router,

no

communication

between

routers

is

required,

and

routers

do

not

rely

on

any

external

components

such

as

admission

control

or

traffic

policers.

Instead,

service

differentiation

is

enforced

using

packet

scheduling

and

dropping

algorithms

designed

for

dynamic

adaptation

to

changing

traffic

arrivals..

In

comparison

to

a

more

traditional

architecture,

such

as

a

static

rate

allocation

used

in

conjunction

with

admission

control,

our

proposed

approach

presents

two

advantages.

First,

measurements

studies,

as

summarized

in

have

shown

that

Internet

traffic

is

generally

highly

variable.

Consequently,

the

backlog

at

bottleneck

links

is

generally

highly

variable.

A

static

configuration

of

the

worst-case

backlog,

as

needed

by

existing

schedulers

such

as

Class-Based

Queuing

(CBQ,

when

delay

bounds

are

offered,

therefore

results

in

under-utilizing

network

resources,

and

it

is

desirable

to

use

instead

an

architecture

dynamically

adapting

to

changes

in

the

traffic

load.

Second,

because

each

QoSbox

operates

independently

of

other

routers,

there

is

no

communication

or

signaling

overhead,

and

setting

up

a

QoSbox

to

govern

a

given

link

does

not

require

any

knowledge

of

the

characteristics

or

topology

of

the

rest

of

the

network..

The

main

limitation

of

an

approach

completely

avoiding

admission

control

and

traffic

policing

is

that

satisfying

all

service

bounds

at

all

times

may

be

impossible.

For

example,

upon

arrival

of

a

sudden

large

burst

of

traffic,

it

may

not

be

feasible

to

satisfy

all

absolute

bounds

(e.g.,

delay

and

loss

rate

bounds)

simultaneously,

in

which

case

some

bounds

have

to

be

temporarily

relaxed.

Thus,

an

order

of

relaxation

of

the

service

objectives

must

be

chosen

at

configuration

time,

for

instance,

allowing

a

violation

of

a

delay

bound

in

favor

of

a

loss

rate

bound.

In

the

QoSbox,

we

give

precedence

to

loss

differentiation

over

delay

(or

throughput)

differentiation.

The

rationale

for

our

choice

is

that

for

TCP

and

TCP-friendly

traffic,

losses

are

used

as

a

congestion

indicator,

and

therefore

result

in

throughput

reduction.

In

other

words,

loss

differentiation

may

have

a

stronger

overall

impact

on

the

service

received

by

TCP-friendly

flows

than

delay

(or

throughput)

differentiation..

Because

the

service

paradigm

we

propose

potentially

enttails

relaxation

of

service

bounds,

our

approach

is

different

from

traditional

deterministic

service

architectures

such

as

Integrated

Services

(IntServ,

or

Differentiated

Services

(DiffServ,

which

provide

strict

service

guarantees.

Within

the

limits

set

by

the

potential

relaxation

of

guarantees,

the

service

model

the

QoSbox

supports

nevertheless

allows

for

emulation

of

the

Assured

Forwarding

(AF,

and

Expedited

Forwarding

(EF,

services

of

the

DiffServ

architecture,

and

even

attempts

to

generalize

the

service

differentiation

provided

by

both

AF

and

EF.

In

particular,

the

QoSbox

can

support

loss,

delay

and

throughput

bounds

given

to

each

class.

In

addition,

the

QoSbox

supports

proportional

differentiation

on

loss

and

delay

between

classes

of

traffic,

so

that

AF-like

relative

differentiation

between

classes

of

service

can

be

quantified.

Fig.

the

service

differentiation

the

QoSbox

can

provide

through

an

example

of

a

QoSbox

configuration

file.

The

configuration

file

contains

the

properties

of

the

output

interface(s)

on

which

QoSbox

traffic

control

must

be

performed.

In

the

example

of

Fig.

the

interface

concerned,

has

a

bandwidth

of

Mbps

and

a

buffer

size

of

packets.

The

field

jobs

indicates

that

traffic

control

is

performed

by

a

variant

of

the

JoBS

algorithm

(Joint

Buffer

Management

and

Scheduling,

which

is

the

scheduling/dropping

algorithm

central

to

the

QoSbox.

We

discussed

the

design

of

the

QoSbox,

a

configurable

IP

router

that

provides

proportional

and

absolute

service

differentiation

to

classes

of

traffic

on

a

per-hop

basis,

by

dynamically

adapting

to

the

traffic

demand.

We

presented

the

implementation

of

the

QoSbox

in

BSD-based

PC-routers,

and

showed

through

analysis

and

measurements

that

the

PC-router

implementation

is

a

solution

that

can

be

readily

used

in

low/mediumspeed

access

networks

with

bandwidths

in

the

order

of

a

couple

of

hundred

megabits

per

second.

We

also

identified

a

number

of

approximations

and

techniques

that

can

be

used

to

implement

the

QoSbox

in

highspeed

routers

used

in

network

cores

and

interconnects

between

autonomous

systems..

We

evaluated

the

potential

of

the

QoSbox

using

a

testbed

PC-routers,

and

showed

that

the

QoSbox

is

a

promising

alternative

to

traditional

architectures

relying

on

admission

control

and

traffic

policing

for

providing

quantitative

service

differentiation..

A

version

of

the

QoSbox

for

BSD

kernels

is

available

to

the

public,

along

with

the

source

code

and

documentation

at

The

software

has

been

available

under

the

BSD

license

since

late

October

and

is

now

distributed

as

part

of

ALTQ

and

the

KAME

snap-kits.

Inclusion

in

the

base

BSD

distributions

as

part

of

ALTQ

is

under

consideration.

Tools

that

facilitate

the

implementation

and

configuration

of

queuing

disciplines

in

PCs

have

been

devised

since

the

days

of

UNIX

System

V,

with

STREAMS

More

recent

packages,

such

as

ALTQ

Netgraph

the

x-kernel

Click

and

Dummynet

allow

for

implementing

sophisticated

queuing

disciplines

in

Linux

or

BSD..

Therefore,

the

implementation

of

QoS

architectures

using

PC-routers

is

not

new.

For

instance,

the

ALTQ

package

itself

supports

natively

the

CBQ

and

HFSC

schedulers.

However,

without

external

admission

control,

the

ALTQ

implementations

of

these

QoS

schedulers

are

in

practice

essentially

used

to

control

the

bandwidth

individual

users

can

receive..

With

respect

to

building

fully

functional

QoS

networks,

one

can

cite

the

attempts

at

creating

DiffServ

networks

using

PC-routers.

Implementations

of

DiffServ

components

in

the

Linux

kernel

are

for

instance

discussed

in

The

authors

of

integrate

traffic

policing

and

scheduling/dropping

in

the

same

router,

which

generates

significant

overhead,

and,

as

a

result,

traffic

can

only

be

forwarded

at

approximately

Mbps.

A

similar

effort

to

implement

DiffServ

components

in

the

Linux

kernels

has

been

recently

pursued

by

and

as

an

application

of

Click

A

very

different

effort

is

pursued

by

flow-aware

networking

which

attempts

to

provide

per-flow

differentiation

to

active

(i.e.,

backlogged)

flows.

The

building

block

of

flow-aware

networking,

is

that,

at

any

given

time

the

number

of

flows

simultaneously

backlogged

in

a

router

is

small

(in

the

order

of

a

few

hundreds),

so

that

it

is

possible

per-flow

differentiation.

An

implementation

in

Linux,

called

the

Cross

Protect

router

is

available.

The

major

differences

with

our

approach

are

their

use

of

per-flow

service

differentiation,

and

per-flow

admission

control.

We

report

an

investigation

of

the

interaction

of

flow-aware

networking

and

class-based

services

as

proposed

in

the

QoSbox

elsewhere

From

the

algorithmic

perspective,

the

notion

of

using

a

dynamic

rate

allocation

to

react

to

traffic

arrivals

is

not

new,

and

was

for

instance

proposed

in

However,

these

approaches

do

not

fully

exploit

the

interaction

between

dropping

and

scheduling,

and

instead

rely

on

admission

control

and

traffic

policing

to

enforce

service

differentiation.

More

recently,

the

Alternative

Best-Effort

(ABE,

service

has

been

proposed

as

a

service

architecture

that

does

not

hinge

on

admission

control.

ABE

considers

only

two

classes

of

traffic,

and

uses

the

Duplicate

Scheduler

with

Deadlines

(DSD)

to

provide

strict

delay

bounds

to

one

class

of

traffic,

at

the

expense

of

a

higher

loss

rate.

ABE

does

not

quantify

the

differentiation

in

the

loss

rates

obtained

by

both

classes.

Similar

to

the

QoSbox,

no

traffic

policing

or

admission

control

are

required.

O O O B I O B O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O B O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O


Polynomials, fragments of temporal logic and the variety DA over traces Abstract. We show that some language theoretic and logical characterizations of recognizable word languages whose syntactic monoid is in the variety DA also hold over traces. To this aim we give algebraic characterizations for the language operations of generating the polynomial closure and generating the unambiguous polynomial closure over traces. We also show that there exist natural fragments of local temporal logic that describe this class of languages corresponding to DA. All characterizations are known to hold for words. Traces were introduced by Mazurkiewicz as a generalization of words to describe the behavior of concurrent processes [4] . Since then traces have become a rather popular setting to study concurrency. A lot of aspects of traces and trace languages have been researched, see [1] for an overview.. Over words it has turned out that finite semigroups are a powerful technique to refine the class of recognizable languages [2] . Two natural operations on classes of languages are the polynomial closure and the unambiguous polynomial closure. For particular classes of languages, so called language varieties, it has been shown that there exist algebraic counterparts in terms of the so-called Mal'cev product [10] . In Section 3 (resp. Section 4) we will show that this correspondence between the Mal'cev product and the polynomial closure (resp. the unambiguous polynomial closure) for restricted varieties also holds over traces.. In Section 5 we tighten these results in the particular case of the class DA of finite monoids to get two language theoretic characterizations of the class of trace languages whose syntactic monoid is in DA. In Section 6 we show that over traces the fragments of local temporal logic TL [XF, YP] , TL[XF, YP, M] and TL[X a , Y a ] also express exactly these languages. All three characterizations are known to hold for words [11, 12] . We have given an algebraic characterization of PolV and PolV ∩ coPolV in the case that V corresponds to a variety of commutative monoids that contains the monoid (2 Σ , ∪, ∅) over subsets the alphabet Σ. We have also shown that all trace languages in UPolV satisfy a particular algebraic property if V corresponds to a variety that contains the monoid (2 Σ , ∪, ∅). That this property is sufficient for UPolV has been shown in the case that V corresponds to Two interesting open problems are whether it is possible to proof that the algebraic characterization of PolV also holds for larger classes of trace languages V and whether it is possible to give a language-theoretic characterization of PolV ∩ coPolV in terms of disjoint unions of unambiguous polynomials as for words.

O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O B I O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O


Large scale integration of senses for the semantic web Nowadays, the increasing amount of semantic data available on the Web leads to a new stage in the potential of Semantic Web applications. However, it also introduces new issues due to the heterogeneity of the available semantic resources. One of the most remarkable is redundancy, that is, the excess of different semantic descriptions, coming from different sources, to describe the same intended meaning.In this paper, we propose a technique to perform a large scale integration of senses (expressed as ontology terms), in order to cluster the most similar ones, when indexing large amounts of online semantic information. It can dramatically reduce the redundancy problem on the current Semantic Web. In order to make this objective feasible, we have studied the adaptability and scalability of our previous work on sense integration, to be translated to the much larger scenario of the Semantic Web. Our evaluation shows a good behaviour of these techniques when used in large scale experiments, then making feasible the proposed approach. An increasing amount of online ontologies and semantic data is available on the Web, enabling a new generation of intelligent applications that exploit this semantic information as source of knowledge [5] . However, the growing amount of semantic content also leads to an increasing semantic heterogeneity.. Heterogeneity is something inherent to the current (and future) Semantic Web. Far from assuming an "ideal" Semantic Web (under the authority of a few high-quality large ontologies, with maximal coverage and expressivity levels), we advocate to learn how to deal with the "real" one instead,. The redundancy problem. As a direct consequence of heterogeneity in the Semantic Web, the problem of redundancy arises. It is characterized by the excess of different semantic descriptions, coming from different sources, to describe the same intended meaning.. For example, if one searches ontological terms to describe the keyword "apple" in the Swoogle semantic web search engine 1 , 262 different results are obtained 2 . Each of them represents a possible semantic description for a particular meaning of "apple". Obviously, this number is quite above the real polysemy of the word "apple". For example, WordNet corpus 3 identifies only two possible meanings for this word (the fruit and the tree), while Wikipedia 4 identifies around 20. However, it is still far from the number of possible senses given by Swoogle. If we take a look at the first page of results in Swoogle, the redundancy problem becomes evident (e.g., the meaning of "apple" as a kind of "fruit" appears repeated in five, out of ten, ontological terms).. In order to solve the problem of redundancy, we propose a method to cluster the ontology terms that one can find on the Semantic Web, according to the meaning that they intend to represent.. Achieving such a clustering is not only essential for human users to better apprehend the results of semantic web search engines, and generally the content of the Semantic Web, but is also crucial for applications that rely on the knowledge from the Semantic Web (see e.g. [5] ). Indeed, eliminating redundancy is a way to improve performance for such applications, but more importantly, knowing which ontological entities refer to the same sense, and which refer to different meanings, makes possible the automatic selection of relevant knowledge in a more accurate and precise way.. Proposed solution. Such an ambitious goal cannot be tackled without relying on an index of the ontological elements accessible through the Semantic Web. For this, our work is supported by the Watson system [4] . Watson is a gateway to the Semantic Web that crawls the Web to find and index available semantic resources, providing a single access point to online semantic information. It also provides efficient services to support application developers in exploiting the Semantic Web voluminous distributed and heterogeneous data.. To tackle the problem of redundancy reduction on the Semantic Web, we define a clustering technique that we apply to the base of ontological terms collected by Watson, and that creates groups of ontological terms having similar meanings. The result is a set of concise senses for each keyword one can find in Watson.. For example, a search of "apple" will return all the ontology terms that refer to the meaning "fruit", grouped together as a single integrated sense. Different integration levels are possible, to adapt the "granularity" in senses discrimination to the requirements of client applications, and to the different points of view of users. Let us imagine that a user considers that "Apple" as "electronics label" and "Apple" as "computer company" should be treated differently, while for many others they intend the same meaning. Therefore, it is important to make the integration flexible, preserving the original source of information still accessible, just in case the user is not satisfied with the proposed integration.. To achieve this goal of sense integration we do not start from scratch. As a matter of fact, in [21] we presented a technique that integrates various keyword senses, when they are similar enough. It was developed for a system that analyzes a keyword-based user query in order to automatically extract and make explicit, without ambiguities, its semantics.. However, this technique was initially targeted to a small scale context, the one given by the few keywords involved in a user query. Therefore, an additional goal that motivates this paper is to adapt these small scale integration techniques to be used in a much more ambitious context: the Semantic Web reachable by the Watson gateway.. The idea of adapting these integration techniques, to be imbricated in the process of indexing the Semantic Web, leads to another more specific task, that is a scalability study, in order to check the feasibility of these techniques when applied to a much larger body of knowledge.. In this work we have tackled both the redundancy and scalability problems. First we propose a large scale integration method that applies our semantic techniques, in order to reduce the redundancy problem on the current Semantic Web, and second we contribute with a scalability study to evaluate the feasibility of our proposal.. The rest of the paper is organized as follows. In Section 2 we present some previous work which serves as background for the present study. In Section 3, our proposal for large scale redundancy reduction is presented. Section 4 focuses on how to optimize the integration level and, in Section 5, we detail the scalability study that we have performed in order to check the suitability of our techniques. Some illustrating examples and further discussion can be found in Section 6. Section 7 reviews some related work and, finally, conclusions and future work appear in Section 8. We have proposed a method to perform a large scale integration of ontology terms, to cluster the most similar ones into integrated senses, when indexing huge amounts of online semantic information. The method is flexible enough to dynamically modify the integration level according to the user point of view, by tuning the similarity threshold. We have also explored possible methods to find an optimal integration level, finally proposing one that is based on performance optimization.. The work presented here is quite innovative in some aspects. For example, it is the first large-scale effort, so far, to provide a pool of clusters of cross-ontology terms free of redundancy (to a certain extent).. A scalability study has been performed in order to investigate the feasibility of our proposal. The results show that our techniques lead to processing times that are controllable and predictable, thus making scalability possible.. As future work, we plan to complete the implementation of the system, only partially covered by our current prototype. It will be provided as a service in Watson eventually. In this way, many applications, that exploit Watson to dynamically access online semantic content, will take advantage of our method.. We plan also to perform a large scale test with human opinion, to judge the quality of the obtained senses. Our proposal represents the first large-scale effort, so far, to provide a pool of clusters of cross-ontology terms free of redundancy. Therefore, direct comparison with other alternatives is quite difficult. Clusty 14 , for example, is a metasearch engine that groups search results in clusters that group pages about a similar topic. The general idea could be equivalent, but our search domain is the Semantic Web instead of the Web, and we are interested in clustering senses instead of web pages. Regarding other systems that index online semantic content [17, 8, 11] , neither of them have incorporated redundancy reduction techniques yet.. Technologically speaking, even though we reuse ontology matching and integration techniques, our work is neither solely about ontology matching [7, 6] , nor about ontology integration or merging [18, 13, 12] , in the sense of obtaining a new ontology from matched ontologies [7] . It is closer, however, to the idea of ontology construction from online ontologies given in [1] . In his work, Alani proposes a general strategy to dynamically segment, map and merge online ontologies in order to support ontology construction. Our target is not the same, but we share some commonalities, and we think that our proposal could indeed support and benefit such kind of systems.. Regarding our particular techniques, notice that our definitions of extraction, ontological context and equivalence, given in Section 3, are general enough to accommodate other similarity measures, always that they come with a clear notion of neighbourhood, as for example in [19] (where they propose the idea of virtual documents, containing neighbouring information, to describe the intended meaning of the ontology terms). Also, other segmentation techniques [20, 16, 2] could substitute the extraction we use. However, the main target of these techniques is usually to reduce the size of large ontologies, to make them treatable and scalable, instead of characterizing a single sense. Furthermore, the good results given by the CIDER alignment service, when compared to others in the OAEI contest [10] , confirm the validity of its extraction and similarity computation, when applied to ontology matching tasks. In this section we briefly present some background work that serves as basis for this study.

O O O O O O O B I O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O B I O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O B I O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O


Optimal procrastinating voltage scheduling for hard real-time systems This paper presents an optimal procrastinating voltage scheduling (OP-DVS) for hard real-time systems using stochastic workload information. Algorithms are presented for both single-task and multi-task workloads. Offline calculations provide real-time guarantees for worst-case execution, and online scheduling reclaims slack time and schedules tasks accordingly. The OP-DVS algorithm is provably optimal in terms of energy minimization with no deadline misses. Simulation results show up to 30% energy savings for single-task workloads and 74% for multi-task workloads compared to using a constant worst-case execution voltage. The complexity of the algorithm for multi-task workloads is linear to the number of tasks involved. In modern VLSI system design, power consumption is one of the most important design constraints. It is especially critical for portable systems due to their limited battery capacity. Meanwhile, mobile processors are becoming more advanced and powerful but this leads to more energy consumption. Thus, the tradeoff between performance and battery life remains critically important.. Applications that do not work under hard performance constraints can effectively use dynamic voltage scaling (DVS) to reduce energy consumption when desired or necessary, but applications with hard real-time deadlines must work under strict voltage scaling constraints. However, for such hard real-time systems, if a given task's required performance is lower than the system's maximum performance, the clock speed and its corresponding supply voltage can be reduced to the lowest possible level while still meeting the task's deadline.. Significant research and development efforts have been expended on DVS [1,2,3,] . Most of the previously published DVS algorithms use the minimum voltage and frequency allowable for worst-case execution to minimize energy consumption. As pointed out in [4, 5, 6, 7] , the optimal DVS approach for minimizing energy when the task's execution time is unknown is to "procrastinate," i.e. increase the speed as the task progresses.. In this paper, we propose an optimal procrastinating DVS algorithm (OP-DVS) for frame-based, hard real-time applications, with the objective of minimizing energy consumption. The proposed algorithm utilizes information about the task executiontime distribution (obtained by profiling similar recently executed tasks), and procrastinates voltage increases as much as possible to minimize unnecessary energy expenditure. Unlike algorithms proposed in [4, 5, 6, 7] , we not only consider the single-task scenario but also take into account scenarios with multiple tasks. There are several papers that have proposed DVS algorithms for similar frame-based multiple tasks [8, 9, 10] . However, [8, 10] only change the order of the tasks to reduce energy, and [9] uses a constant voltage and frequency for each task. In this paper, we show mathematically that our OP-DVS algorithm can achieve global energy minimization for frame-based multiple tasks with known task execution time distributions. This paper presents an optimal procrastinating DVS (OP-DVS) algorithm for hard real-time tasks with known execution time distributions, with the objective of minimizing energy consumption. For a single task, the Single-Task OP-DVS algorithm reduces energy consumption by gradually increasing the supply voltage and operating frequency until the task is completed while guaranteeing that the deadline is met. Simulation results show Single-Task OP-DVS achieves up to 30% energy savings over execution at the worst-case voltage. For frame-based multiple tasks, Local OP-DVS and Global OP-DVS were presented. Local OP-DVS is an extension of SingleTask OP-DVS that utilizes the slack time from adjacent tasks. Global OP-DVS provides further energy reduction by taking into account the interactions of tasks within each frame. Global OP-DVS was mathematically proven to achieve global energy optimization for frame-based task sets, and simulation results show that it can reduce energy consumption up to 74% compared to execution at the worst-case voltage.

O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O


Interference Decoding for Deterministic Channels An inner bound to the capacity region of a class of deterministic interference channels with three user pairs is presented. The key idea is to simultaneously decode the combined interference signal and the intended message at each receiver. It is shown that this interference-decoding inner bound is tight under certain strong interference conditions. The inner bound is also shown to strictly contain the inner bound obtained by treating interference as noise, which includes interference alignment for deterministic channels. The gain comes from judicious analysis of the number of combined interference sequences in different regimes of input distributions and message rates. Finally, the inner bound is generalized to the case where each channel output is observed through a noisy channel. Interference channels with three or more user pairs exhibit the interesting property that decoding at each receiver is impaired by the joint effect of interference from all other senders rather than by each sender's signal separately. Consequently, dealing directly with the effect of the combined interference signal is expected to achieve higher rates.. One such coding scheme is interference alignment, e.g., [1] , [2] , in which the code is designed so that the combined interference signal at each receiver is confined (aligned) to a subset of the receiver signal space. Depending on the specific channel, this alignment may be achieved via linear subspaces, signal scale levels, time delay slots, or number-theoretic bases of rationally independent real numbers [3] , [4] . In some cases, e.g., the multiple-input multiple-output (MIMO) Gaussian interference channel [2] , the decoder simply treats interference as noise. In general, however, decoding can be thought of as a two-step procedure. In the first step, the received signal is projected onto the desired signal subspace, e.g., by multiplying it by a matrix as for the MIMO case [1] , [2] or by separating each received symbol into its constituent lattice points as for the scalar Gaussian case [4] . In the second step, interference-unaware decoding is performed on the projection of the received signal. This decoding procedure often leads to an implicit decoding of some function of the undesired messages. Explicit decoding of the combined interference signals was first discussed in [5] for the many-to-one Gaussian interference channel. The authors argue that with Gaussian codes, decoding the combined interference is tantamount to decoding each interfering sender's codeword. On the other hand, with structured (lattice) codes, the combined interference can be made to appear essentially as a codeword from a single interferer.. In general, for channels with inherent linearity such as Gaussian interference channels, it is natural to consider decoding linear combinations of interfering codewords, instead of individual codewords. This idea is developed in [6] for Gaussian relay networks, leading to a compute-forward relaying scheme. In this paper, we investigate interference decoding for the three receiver deterministic interference channel (3-DIC) depicted in Figure 1 . The channel consists of three sender-receiver alphabet pairs (X k , Y k ), loss functions g lk , interference combining functions h k , and receiver functions f k for k, l ∈ {1, 2, 3}. The outputs of the channel are. (1) X lk = g lk (X l ),. S 2 = h 2 (X 12 , X 32 ), S 3 = h 3 (X 13 , X 23 ).. We assume that h k and f k are one-to-one when either one of their arguments is fixed. For example, for. for every probability mass function (pmf) p(x 11 , s 1 ). Except for requiring the one-to-one property to hold for both arguments, this channel model is an extension of the Costa-El Gamal two-user-pair model [7] . Note that this model is more general than the class of deterministic interference channels studied in [8] .. Each sender k ∈ {1, 2, 3} wishes to convey an independent message M k at data rate R k to its corresponding receiver. We define a (2 nR1 , 2 nR2 , 2 nR3 , n) code, probability of error, and achievability of a given rate triple (R 1 , R 2 , R 3 ) in the standard way (see [9] ).. We focus on this class of deterministic channels for several reasons. First, the capacity region for the two-user-pair version of this class [7] is known and is achieved by the HanKobayashi scheme [10] . This gives some hope that an appropriate extension of Han-Kobayashi where the combined interference is decoded partially or fully may be optimal for more than two user pairs. Second, this class includes the finite field deterministic model in [11] , which approximates Gaussian interference channels in the high SNR regime [12] . For more than two user pairs, capacity results for the finite field deterministic model are known only in some special cases [13] , [14] , where interference is treated as noise. An interesting question is whether more sophisticated coding schemes can achieve higher rates for this class of channels. Finally, the combined interference signal in our channel takes values from a finite set, and therefore a certain type of alignment can be observed without resorting to complicated structured codes [15] .. The main result of the paper is an inner bound on the capacity region of the 3-DIC, which is achieved via interference decoding. We assume point-to-point codes without rate splitting or superposition coding since such codes are widely deployed and it is interesting to investigate the benefit of using a more sophisticated receiver instead of treating interference as noise. Specifically, each receiver simultaneously decodes the intended message and the combined interference without penalizing incorrect decoding of the latter. Of course, one does not expect this scheme to be optimal in general, since even for the two-user-pair case, superposition coding is required for optimality. Note that for our class of deterministic channels, algebraic structures such as linear subspaces or lattices do not exist in general. Hence, our decoder does not use the two-step procedure as in the work on Gaussian channels and their corresponding high SNR deterministic models.. The key observation is that depending on the input pmfs and the message rates, the number of possible combined interference sequences can be equal to the number of interfering message pairs, the number of typical combined interference sequences, or some combination of the two. In our scheme, each sender does not need to know the other senders' codebooks. However, we use simultaneous decoding, which requires that the receivers know all codebooks. As in the recent characterization of the Han-Kobayashi region [16] , we do not require the interference decoding to be correct with arbitrarily small probability of error.. In the following section, we summarize and discuss the main results in this paper. The proofs of these results are given in Sections III, IV and V, with some details deferred to the Appendix. In Section VI, we give final remarks on the optimality of interference decoding. Throughout the rest of the paper, notation and basic definitions follow [9] .

O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O


A simple improved distributed algorithm for minimum CDS in unit disk graphs Several routing schemes in ad hoc networks first establish a virtual backbone and then route messages via backbone nodes. One common way of constructing such a backbone is based on the construction of a connected dominating set (CDS). In this article we present a very simple distributed algorithm for computing a small CDS. Our algorithm has an approximation factor of at most 6.91, improving upon the previous best-known approximation factor of 8 due to Wan et al. [2002]. The improvement relies on a refined analysis of the relationship between the size of a maximal independent set and a minimum CDS in a unit disk graph. This subresult also implies improved approximation factors for many existing algorithm. Wireless ad hoc networks appear in a wide variety of applications, including military battle-field, disaster relief, sensing, and monitoring. Unlike wired networks, no physical backbone infrastructure is installed in wireless ad hoc networks. Instead, the nodes communicate either directly or via intermediate nodes. In this article we assume that all nodes are located in a Euclidean plane and have an equal transmission range of 2. The topology of such a network can be modeled as a unit disk graph G = (V , E). Two nodes are adjacent if the unit disks centered at them intersect, that is, if their interdistance is at most 2. (Note: we use this definition instead of the commonly used one based on a transmission range of 1 or equivalently intersecting disks of radius 0.5 to simplify calculations in the proofs. It should be obvious that by scaling our results also hold for any other definition of the unit disk graph, be the "unit" 1, 2, or any other constant.). Although a wireless ad hoc network has no physical backbone infrastructure, a virtual backbone can be formed by nodes in a connected dominating set (CDS) of G. A CDS of G is a subset S ⊆ V such that each node in V \ S is adjacent to some node in S and the communication graph induced by S is connected. We denote by OPT a minimum CDS in G.. The problem of finding a minimum CDS in a unit disk graph has been shown to be NP-hard [Clark et al. 1990] . Marathe et al. [1995] proposed a 10-approximation centralized algorithm for this problem. Cheng et al. [2006] presented a polynomial-time approximation scheme that guarantees an approximation factor of (1 + 1/s) with running time of n O((s log s). 2 ) . However, centralized algorithms cannot be applied to real networks. Recently, the distributed construction of a small CDS has attracted a great deal of attention. The currently best-known distributed algorithm due to Wan et al. [2002] has an approximation factor of 8 and running time O(n). However, the analysis in Wan et al. [2002] ignored delays incurred by interference. An algorithm recently presented by Gandhi and Parthasarathy [2004] with high probability computes a 192-approximation in O(n log n) time and explicitly handles interference. The algorithm in Gandhi and Parthasarathy [2004] is based on a distance-2-coloring (D2-coloring), where no two nodes at 2-hop distance can have the same color.. In this article we present a very simple 6.91-approximation algorithm for computing a minimum CDS in unit disk graphs. That improves upon the previous best known approximation factor of 8 due to Wan et al. [2002] . Ignoring interference, our algorithm matches the O(n) running time of the algorithm in [Wan et al. 2002 ], but we provide a more detailed analysis also taking care of interference by using the D2-coloring of Gandhi and Parthasarathy [2004] based on results by Luby [1986 Luby [ , 1993 , who proposed randomized distributed algorithms for vertex coloring and minimal independent set construction in arbitrary undirected graphs.. The main contribution of this article is an improved analysis of the relationship between the size of a maximal independent set and a minimum CDS in a unit disk graph, which yields better bounds for many previous algorithms [Alzoubi 2003; Alzoubi et al. 2003; Gandhi and et al. 1995; Wan et al. 2002] . Note that a maximal independent set is also a dominating set, which only needs to be connected to obtain a CDS.. The rest of the article is organized as follows. The distributed CDS algorithm is presented in Section 2. In Section 3 we bound the size of any independent set in terms of the minimum CDS size. At Section 4 we provide a various types of experimental results. Section 5 contains some concluding remarks. In this work we have proposed an improved distributed 6.91-approximation algorithm for computing a connected dominating set in unit disk graphs. The algorithm is very simple and can be easily implemented in wireless ad hoc networks. As the main contribution of this article, we have shown an improved analysis of the relationship between the size of a maximal independent set and a minimum CDS in a unit disk graph, which yields better bounds for many other algorithms. In our experimental section we showed that the performance of our algorithm is still much better than the ratio of 6.91 that the theoretical analysis can guarantee-in fact, for dense networks it was always around 3.5. This, of course, leaves as an open problem the tightening of the theoretical analysis. In particular, the pessimistic assumption that to connect the nodes of the independent set one needs one grey glueing node each seems not to be the case in practice. The algorithm terminates when there remain no white or red nodes. Next we state the main theorem. PROOF. The fact that the final set S (black and grey nodes) is indeed a CDS, can be easily established by verifying the following invariants maintained throughout the execution of our algorithm:. (1) The set of black nodes I form an independent set in G and dominate the set of grey and blue nodes. Note that |S| ≤ 2|I |. That is due to the fact that each grey node u can be associated with a unique black node v such that u was parent of v. As we show in Section 3, |I | ≤ 3.453 · |OPT| + 8.291, which implies the bound on |S|.. The running time of our algorithm is O(|OPT| · q), since each phase lasts q time steps (according to the number of time-slots obtained from the D2-coloring) and we have O(|OPT |) rounds (with three phases each) as in each round at least one node gets colored red. The message complexity is O(|OPT|·n) because during each phase at most n messages are sent (the message size is O(log n) bits).. This bound includes delays due to interference between nearby nodes, as this is treated explicitely by the D2-coloring. Note that q = O(n) and |OPT | = O(n). Ignoring interference as in the model of Wan et al. [2002] , we get the following corollary: COROLLARY 2.2. Ignoring interference, our algorithm computes a connected dominating set S in G with |S| ≤ 6.91 · |OPT| + 16.58 and has running time O(n) and message complexity O(n 2 ).. Furthermore, if the density of the nodes is high (i.e., is a large value of q), typically |OPT| is rather small, and vice versa, if the optimal |OPT| is large, the node density is typically small. So even including the explicit treatment of interference, we expect the running time of our algorithm to be very competetive.

O O O O O O O O O B I I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I I O B I I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O


Automatic query generation for patent search Patent search is the task of finding relevant existing patents, which is an important part of the patent's examiner's process of validating a patent application. In this paper, we studied how to transform a query patent (the application) into search queries. Three types of search features are explored for automatic query generation for patent search. Furthermore, different types of features are combined with a learning to rank method. Experiments based on a USPTO patent collection demonstrate that the single best search feature is the combination of words and noun-phrases from the summary field and the retrieval performance can be significantly improved by combining three types of search features. Since patents play an important role in Intellectual Property protection, patent search has attracted considerable attention recently. Prior-art search, one of the main types of patent retrieval, helps the patent examiners to find previously published relevant patents when they need to validate or invalidate a patent application. Compared with other search tasks, prior-art search has its own unique properties. First, different from a technical report, the writers of a patent will focus on how to extend the coverage of their patent or to emphasize novel aspects of the patent, but not how to help the reader understand the techniques easily. Therefore, it is not unusual to see vague expressions and non-standard terminology in a patent. Second, prior-art search is a recall-oriented retrieval task, where not missPermission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. To copy otherwise, to republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. ing a relevant document is more important than retrieving a relevant document at the top rank. Usually, in prior-art search, the patent examiners will carefully examine the first 100 or 200 documents retrieved by the search engine instead of browsing just the top few results. These properties mean that information retrieval models that work well with TREC collections may not be applicable in the patent environment.. Previous work on prior-art search focused on developing the retrieval model, but ignored the generation of a search query from the query patent. Most of this research used the claims extracted from the query patent as the search query without carefully considering whether it is the best choice. Larkey [1] has studied how to transform a patent into a query for patent classification, however this approach has not been explored carefully for prior-art search. Our previous work [2] started to work on this problem and found the summary part of a patent is a much better source for generating query words for prior-art search than the claim part. In this paper, we will explore more factors in automatic query generation and attempt to combine different search features with learning to rank methods. Furthermore, we will report on recall-oriented performance measures, since they are more interesting for the patent task.. In the next section, we briefly describe related work. Then, in section 3, we present the types of features that are used in the experiments. Section 4 discusses how these features are combined. Section 5 presents the experimental results and discusses them. Prior-art search is an important task of patent retrieval. In a departure from previous work, we focus on how to automatically transform a query patent into a search query. After exploring different factors of a successful transformation, we provide answers to how many query words should be used, where to extract query words, how to weight them and whether to use noun-phrases. Furthermore, we show that combining different features can significantly improve retrieval performance. In the future, working on more reliable relevance judgments is an important issue. Larkey [1] studied the problem of patent classification instead of prior-art search. However, due to the different properties of these two tasks, observations from patent classification are not necessarily valid for prior-art search, and sometimes even opposite conclusions can be reached. For example, the experiments in this paper show that words from the title field are the least useful for prior-art search, while Larkey assigned more weight to the title for patent classification. Osborn et al. [3] reported some early results about patent retrieval on a subset of the USPTO collection. With phrases as the indexed features, they observed some improvement on retrieval performance. Takaki et al. [4] analyzed the claim part of the patent and discovered query subtopics. The final score of a retrieved document was a weighted combination of the scores of using each extracted query topic as the query. Mase et al. [5] proposed a twostage strategy for patent retrieval. In the first stage, the claim part of the query patent was used to retrieve the top 1,000 patents. In the second stage, several techniques were used to rerank the top 1,000 patents. In a recent paper, Fujii [6] applied link analysis techniques to the citation structures of the patent collection. After combining the citation-based scores with the text-based scores for patents, better performance than only using the text information was achieved.. The NTCIR patent retrieval track 1 has become one of the most important platforms for comparing the retrieval performance of different systems and testing new ideas. The query topics are patents and the queries used are one or more claims of the query patent. In NTCIR4, expert judgments were used as the relevance data. Due to the cost, only 34 query topics were developed. In NTCIR5 and NTCIR6, a patent's citations were used as relevance judgments and thousands of query topics were developed automatically.. "Learning to rank" techniques have attracted considerable attention in recent years. The basic idea is to learn the retrieval model with machine learning techniques. Several machine learning techniques have been used, such as Ranking SVM [7] , RankBoost [8] and RankNet [9] . Recently, a boosting style method, AdaRank [10] was proposed which considered the query as the basic unit and has the property of directly optimizing the performance measure used for the search task.

O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O B I I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O


Basing Cryptographic Protocols on Tamper-Evident Seals Abstract. In this paper we attempt to formally study two very intuitive physical models: sealed envelopes and locked boxes, often used as illustrations for common cryptographic operations. We relax the security properties usually required from locked boxes (such as in bit-commitment protocols) and require only that a broken lock or torn envelope be identifiable to the original sender. Unlike the completely impregnable locked box, this functionality may be achievable in real life, where containers having this property are called "tamper-evident seals". Another physical object with this property is the "scratch-off card", often used in lottery tickets. We show that scratch-off cards can be used to implement bitcommitment and coin flipping, but not oblivious transfer. Of particular interest, we give a strongly-fair coin flipping protocol with bias bounded by O(1/r) (where r is the number of rounds), beating the best known bias in the standard model even with cryptographic assumptions. In this paper we consider the use of "tamper-evident seals" in cryptographic protocols. A tamper-evident seal is a primitive based on very intuitive physical models: the sealed envelope and the locked box. These are often used as illustrations for a number of basic cryptographic primitives: For example, encryption is often depicted as placing a message in a locked box (that cannot be opened without a key), while bit commitment is usually illustrated as a sealed envelope.. In a bit-commitment protocol one party, Alice, commits to a bit b to Bob in such a way that Bob cannot tell what b is. At a later time Alice can reveal b, and Bob can verify that this is indeed the bit to which she committed. The standard illustration used for a bit-commitment protocol is Alice putting b in a sealed envelope, which she gives to Bob. Bob cannot see through the envelope (so cannot learn b). When Alice reveals her bit, she lets Bob open the envelope so he can verify that she didn't cheat.. The problem with the above illustration is that a physical "sealed envelope" is insufficient for bit-commitment: Bob can always tear open the envelope before Alice officially allows him to do so. Even a locked box is unlikely to suffice; many protocols based on bit-commitment remain secure only if no adversary can ever open the box without a key. A more modest security guarantee seems to be more easily obtained: an adversary may be able to tear open the envelope but Alice will be able to recognize this when she sees the envelope again.. "Real" closures with this property are commonly known as "tamper evident seals". These are used widely, from containers for food and medicines to highsecurity government applications. Another common application that embodies these properties is the "scratch-off card", often used as a lottery ticket. This is usually a printed cardboard card which has some areas coated by an opaque layer (e.g., the possible prizes to be won are covered). The text under the opaque coating cannot be read without scratching off the coating, but it is immediately evident that this has been done.. In this paper we attempt to clarify what it means to use sealed envelopes in a cryptographic protocol. In particular, we study their applicability to coin flipping (CF), zero-knowledge protocols, bit commitment (BC) and oblivious transfer (OT), some of the most fundamental primitives in modern cryptography.. Our Results. In this paper we show that the sealed envelopes we consider can be used to implement standard cryptographic protocols. We construct protocols for "weakly fair" CF (in which the result is 0, 1 or invalid ) and BC.. The existence of BC immediately implies the existence of a zero-knowledge proof system for any NP language [16] . In the full version, we also show a noninteractive zero knowledge proof system (with a preprocessing stage) for any NP language that can be implemented using pre-printed scratch-off cards.. A possibly practical application of our model is the "cryptographic randomized response technique" (CRRT), defined by Ambainis et al. [2] . "Randomized response" is a polling technique used when some of the answers to the poll may be stigmatizing (e.g., "do you use drugs?"). The respondent lies with some known probability, allowing statistical analysis of the results while letting the respondent disavow a stigmatizing response. In a CRRT, there is the additional requirement that a malicious respondent cannot bias the results more than by choosing a different answer. The techniques described by Ambainis et al. achieve this, but require "heavy" cryptographic machinery (such as OT), or quantum cryptography. In the full version of the paper we give a simple protocol for CRRT using scratch-off cards.. One of the most interesting results is a protocol for "strongly fair" CF (where the result for an honest player must be either 0 or 1 even if the other player quits before finishing the protocol) with bias bounded by O( 1 r ), where r is the number of rounds. In the standard model, even with cryptographic assumptions, the best known bias for a protocol with r rounds is O(. ) (due to Cleve [8] ). For a large class of protocols (including any that rely on bit-commitment or weakly fair coin flipping as a black-box), an unpublished result of Cleve and Impagliazzo [9] shows this is the best possible bias.. An important contribution of this paper is the formal analysis for the models and protocols we construct. We show that the protocols are Universally Composable in the sense of Canetti [7] . This allows us to use them securely as "blackboxes" in larger constructions.. On the negative side, we show that our protocol for strongly fair CF using scratch-off cards is optimal: it is impossible to do better than O( 1 r ) bias (this follows from a careful reading of the proof in [8] ; the proof appears in the full version). We show that OT cannot be implemented using scratch-off cards without additional assumptions (note that we show the impossibility of any type of OT, not just universally composable realizations).. Seals in Different Flavors. In the full version of the paper, we consider some additional variants of tamper-evident seals. Roughly speaking, the difference arises from whether or not a party can distinguish their own containers from those of the other party without opening the seal, and whether or not an honest player can "break" the seal. Scratch-off cards correspond to the distinguishable case in which the honest party can break the seal. We show that in a distinguishable "weak-lock" model, where the honest party cannot break the seal, even BC cannot be implemented (the proof is similar to the impossibility of OT , while in the indistinguishable case it is possible to implement both BC and OT. Due to space constraints, this paper will concentrate solely on the "distinguishable envelope" (scratch-off card) model. Note that in the standard model of cryptography, where the parties exchange messages and there is no access to outside physical resources, we do not know how to implement any of these closures.. Related Work. To the best of our knowledge, this is the first attempt at using tamper evident seals for cryptographic protocols. Ross Anderson discusses "packaging and seals" in the context of security engineering [3] , however the use of tamper-evidence does not extend to more complex protocols. Blaze gives some examples of the reverse side of the problem: cryptanalysis of physical security systems using techniques from computer science [4, 5] . Using scratch-off cards in the lottery setting can be described as a very weak form of CF, however we do not believe this has ever been formally analyzed (or used in more complex protocols).. On the other hand, basing cryptographic protocols on physical models is a common practice. Perhaps the most striking example is the field of quantum cryptography. One of the inspirations for this work was the idea of "Quantum Bit Escrow" (QBE) [1] , a primitive that is very similar to a tamper-evident seal and that can be implemented in a quantum setting. There are, however, significant differences between our definitions of tamper-evident seals and QBE. In particular, in QBE the adversary may "entangle" separate escrowed bits and "partially open" commitments. Thus, while unconditionally secure bit-commitment is impossible in the pure quantum setting [19, 18] , it is possible in ours.. Much work has been done on basing BC and OT on the physical properties of communication channels, using the random noise in a communication channel as the basis for security. Both BC and OT were shown to be realizable in the Binary Symmetric Channel model [11, 10] , in which random noise is added to the channel in both directions with some known, constant, probability. Later work shows that they can also be implemented, under certain conditions, in the weaker (but more convincing) Unfair Noisy Channel model [13, 12] , where the error probability is not known exactly to the honest parties, and furthermore can be influenced by the adversary. Our construction for 1-2 OT uses some of the techniques and results from [13] .. One of the motivations for this work was the attempt to construct cryptographic protocols that are implementable by humans without the aid of computers. This property is useful, for example, in situations where computers cannot be trusted to be running the protocol they claim, or where "transparency" to humans is a requirement (such as in voting protocols). Many other examples exist of using simple physical objects as a basis for cryptographic protocols that can be performed by humans, some are even folklore: Sarah Flannery [15] recounts a childhood riddle that uses a doubly-locked box to transfer a diamond between two parties, overcoming the corrupt postal system (which opens any unlocked boxes) despite the fact that the two parties have never met (and can only communicate through the mail). Fagin, Naor and Winkler [14] assembled a number of solutions to the problem of comparing secret information without revealing anything but the result of the comparison using a variety of different physical methods. Schneier devised a cipher [21] that can be implemented by a human using a pack of cards. In a lighter vein, Naor, Naor and Reingold [20] give a protocol that provides a "zero knowledge proof of knowledge" of the correct answer to the children's puzzle "Where's Waldo" using only a large newspaper and scissors. A common thread in these works is that they lack a formal specification of the model they use, and a formal proof of security. Organization of the Paper. In Section 2, we give a formal definition for tamper-evident envelopes and the functionalities we attempt to realize using them. In Section 3 we discuss the capabilities of this model, showing that OT is impossible and giving protocols for BC and strongly-fair CF with bias 1/r. Section 4 contains the discussion and some open problems.

O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O B I B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O


An extended cooperative transaction model for xml In many application areas, for example in design or media production processes, several authors have to work cooperatively on the same project. Thereby, a frequently used data format is XML. In this paper, we address the special requirements of cooperative working on shared XML graph structures, such as early visibility of updates, multi-directional information flow, and parallel working. Since most existing transaction models are hardly applicable, we present a novel transaction model based on multi-level transactions and dynamic actions that meets these requirements. Additional advantages of this model are appropriate concepts for transaction synchronization and resolution of conflicts. In many application scenarios, for example in media production, users need to work cooperatively on the same project. Within a cooperative workflow, every user is equal and they are all aware of the current state of the project. They can exchange information in arbitrary directions without restrictions. In this way, it is possible for each user to adjust his own work to the current state of the project and the work of the others. Each user is able to introduce his proposals and solutions and have them checked for conformance at an early stage.. Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. To copy otherwise, to republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. The application scenario considered in this paper is the postproduction of movies as part of the media production process in a spatial sound system. The task of a sound designer is to animate static objects and to define their locations/movements as well as the characteristics of the surroundings, for example to give the listener the impression to be in a cave or in a concert hall. The produced meta information is stored as a scene graph in XML format. Figure 1 shows an example scene graph. In this paper, we presented a novel multi-level cooperative transaction model based on dynamic actions and multi-level transactions that fulfills the requirements of media production applications. The proposed model enables a high degree of cooperation between users in comparison to other models by making changes visible to other users at an early stage and allowing a multi-directional information flow between them. To achieve this goal we had to abstain from serializability. However, isolating single operation sequences and reading data before updating it prevents us from inconsistencies resulting from conflicts like lost updates, non repeatable reads, or phantoms. Other conflicts can be resolved by aborting the conflicting transactions. To increase the degree of parallelism we extended the simple read/write model with semantic tree operations. Thus, e.g., move and edit operations can be supported even on the same node. Finally, this paper also presented an extract of the formal specification of the developed transaction model.. Future work comprises the formal proof of correctness of the transaction and synchronization model as well as the development of a transaction recovery strategy. A next step will be the implementation of the transaction model, locking protocol, and recovery model as part of a whole design application. Thereby, the analysis of different system architectures will be an interesting point. Furthermore, the investigation of other synchronization techniques, e.g., an optimistic one, is a challenging research issue. Our work is based on extended transactions, which address the problems of long running transactions stated in Section 1. However, these extended transaction models are only applicable to the special use case described in Section 1 in a limited way, as shown subsequently.. Closed nested transactions [9, 10] require isolation between whole transaction trees and siblings within one transaction tree. (A transaction tree consists of a root transaction and several levels of sub transactions.) If every author is assigned one transaction tree, this means that changes of an author are only visible to others after the root transaction has committed. Thus, a cooperative workflow is inhibited.. Open nested transactions as well as their specialization, multi-level transactions [16] , support cooperative working by relaxing the isolation property. One author could see the changes of another author before this other author finishes his work. However, transaction recovery in case of transaction errors or aborts is complex due to the use of compensating transactions. For example, sometimes it is hard or even impossible to find an appropriate compensating transaction, because the operations that have to be undone have very complex or even no reverse operations. In [5] , problems of compensating transactions are discussed in more detail.. The Saga concept [3, 9] is based on open nested transactions. It relaxes the isolation property, too. However, to prevent possibly evolving cascading abortions and therefore reduce transaction recovery complexity, commutativity between sub transactions of different Sagas is required. Thus, no "real" information flow is possible between different authors, which means that no cooperative working can take place.. The ConTract model [9, 15] is similar to the Saga concept, but it enables cooperative working of several authors, because it does not require commutativity. However, the use of compensating transactions is required for transaction recovery.. The DOM transaction model [1, 9] is an approach to combine open and closed nested transactions. This concept offers the possibility of open nesting of closed nested transactions. Thus, cooperative working is enabled. But again, the use of compensating transactions is required.. The CONCORD model [9, 14] is based on object versioning. Every author works on a local copy of an object. Cooperation is enabled by special relationships that can be committed by the authors. Version control systems (VCS) like CVS are also based on object versioning. They enable cooperation, since an information flow between several authors in arbitrary directions is possible. However, VCS and the CONCORD model have one major drawback in common. Changes of an author are not visible to other authors until he commits or starts a special relationship, respectively. Furthermore, in VCS an update call is necessary after a commit, in order to retrieve the current state of an object at all. In both models there are no fixed time points when changes are propagated. However, cooperation requires visibility of changes at an early stage, so that all authors are always aware of the most current state of the project. This is necessary, because only this way they are able to decide about further work steps within the project.. The dynamic action model [11] extends the traditional transaction model with an additional state completed, as shown in Figure 2 . Before an action can proceed to the com- Figure 2 : Dynamic action state model mitted state, it has to be in the completed state. This means that all operations of this action are fulfilled and it is ready to commit. It can only be aborted due to the abortion of actions it depends on. Only if it is proved, that all actions it depends on are committed, this action can commit, too. Thus, committed actions never have to be aborted and so the durability property is ensured. Thereby, the use of compensating actions can be avoided. Based on this model two extended action models have been developed.. Nested dynamic actions [9, 12] have an architecture similar to the closed nested transactions described above. They require serializability between whole action trees. If every author is assigned one action, this means that there is only an uni-directional information flow possible between the authors. Thus, cooperative working is prevented.. Nested dynamic actions for cooperative applications [9] abolish serializability within groups of action trees, also called cooperation groups. Thus, cooperative working is enabled. However, this principle is impractical for our use case due to the following fact. Though, the work can be divided into several groups, cooperation between different groups should still be possible but is not allowed in this model. Furthermore, resolving conflicts, which result from the lack of serializability, needs the intervention of the authors. They have to specify objects for which a cooperative access has to be forbidden, because otherwise a conflict would occur. Such a low-level intervention cannot be expected from a designer.. In summary, all mentioned transaction or action models are not fully applicable to the use case described in Section 1. Thus, there is a need for a novel cooperative transaction model, which allows an early visibility of changes, an multidirectional information flow, and the possibility to discard single work steps. It also shall prevent the user from conflicts and inconsistencies which can occur due to relaxation of isolation. Furthermore, transaction recovery should be possible without using compensating transactions.

O O O B O O B O O O O O O O O O B I O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O B O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O B I O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O B O O O O O O O O O O B O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O B O O B O O O O O B O O O O O O O O O O O O B O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O B O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O