by Maarten Behn
Group 5

Exercise 10.1 (5 Points)

Let be a directed graph and let be a subset of vertices.
For each let be a natural number.
Show that is a matroid.

We have to show:


  1. The empty set has no arcs, so for all , we have , since is a positive integer.

  2. and , we have
    since

  3. with , then there exists such that .

Group the arcs in into disjoint classes based on the vertex they point to in .

So is the set of all arcs in that enter vertex . Then the family consists of all subsets such that for each , .

This then is the definition of a partition matroid:

  • The ground set is partitioned into disjoint subsets , one for each .

  • Each subset has a quota , and we require that any independent set satisfies .

Exercise 10.2 (Intersection of matroids) (2+5 Points)

The intersection of two independent systems and is defined as .
(a) Show that is again an independent system.

Let

We have to show:


  1. since

  2. and , we have
    if
    since holds

(b) Show that any independent system is the intersection of a finite number of matroids.

Let be an independent system with rank function

for all .

The rank of the system is than

There is a family for each

Each is a matroid with rank function

because

  1. since .
  2. If and , then

so .
3. For any with , there exists such that .



construct with

since if and only if and for all .

Thus, every independent system is the intersection of finitely many matroids.

Exercise 10.3 (3+5 Points)

There are tasks to be completed in days.
Each task has a deadline by which it must be completed, and requires one day to process.

(a) We call a subset of tasks feasible if there exists a schedule that can complete all tasks in X by their respective deadlines.
Furthermore, we define

for all .
Show that is feasible if and only if for all it holds that .

() Suppose is feasible. Show that , .

Since is feasible, there exists a schedule that completes all tasks in on or before their deadlines.
Consider any time . Let be the set of tasks in that have deadline at most .
Since each task takes exactly one day, and all tasks in must be completed by day , we need at least time slots within the first days.
But there are only days up to day , so we must have:

() Suppose that , . Show that is feasible.

We use a greedy algorithm: schedule the tasks in in order of non-decreasing deadlines.

  1. Sort tasks in as such that .
  2. Schedule them one per day, assigning task to day .

We now check that this schedule meets all deadlines.

Task is scheduled on day .
Its deadline is .
Since tasks are ordered by deadline, for any we know that (because at least tasks in have deadline ).
By the assumption , we get:

Therefore, task is scheduled on day , so it meets its deadline.

(b) Show that , where contains all feasible subsets of , is a matroid.

We have to show that:


  1. There is a which is feasible, because there are no tasks that need to be scheduled.

  2. If and , then .
    We want to show that is feasible. From part (a), it is enough to show that for all :

But since , we have for all , and hence:

Thus, is feasible, so .

  1. If and , then there exists such that .

Since is feasible, there exists a schedule for that finishes all its tasks on time.
Suppose we try to add each to .
If for all such we had , then for each such , there exists some such that:

But , so this inequality can only happen if and .
But the total number of such ‘s is limited by how many ‘s have , and implies that not all can be blocked this way.

Thus, at least one can be added without violating feasibility.