2015-04-22 19:40:22 +00:00
|
|
|
/* VecPair<a,b> Menge<? extends Pair<a,c>> */
|
2013-10-18 11:33:46 +00:00
|
|
|
/* Funktioniert !!!
|
|
|
|
*/
|
|
|
|
|
2015-04-22 19:40:22 +00:00
|
|
|
/* VecPair<a,b> Menge<Pair<a,c>> */
|
2013-10-18 11:33:46 +00:00
|
|
|
/* Funktioniert !!!
|
|
|
|
*/
|
|
|
|
|
2015-04-22 19:40:22 +00:00
|
|
|
/* VecPair<Number,b> Menge<Pair<a,c>> */
|
2013-10-18 11:33:46 +00:00
|
|
|
/* Funktioniert !!! */
|
|
|
|
|
2015-04-22 19:40:22 +00:00
|
|
|
/* Menge<VecPair<? extends Number, Integer>> Menge<a> */
|
2013-10-18 11:33:46 +00:00
|
|
|
/* Funktioniert !!! nochmals ueberpruefen 07-07-29 */
|
|
|
|
|
2015-04-22 19:40:22 +00:00
|
|
|
/* VecPair<? extends Number, Integer> Menge<Pair<? extends Number,Integer>> */
|
2013-10-18 11:33:46 +00:00
|
|
|
/* Funktioniert kein Unifier!!! */
|
|
|
|
|
2015-04-22 19:40:22 +00:00
|
|
|
/* VecPair<? extends Number, Integer> Menge<? extends Pair<? extends Number,Integer>> */
|
2013-10-18 11:33:46 +00:00
|
|
|
/* Funktioniert!!! */
|
|
|
|
|
|
|
|
|
2015-04-22 19:40:22 +00:00
|
|
|
/* Menge<b> Menge<? extends Menge<Pair<a,c>>> */
|
2013-10-18 11:33:46 +00:00
|
|
|
/* funktioniert */
|
|
|
|
/* Erg.:
|
|
|
|
[[(TPH a = TPH A), (TPH c = Integer), (TPH b = ? extends VecPair< TPH A, TPH B >)],
|
|
|
|
[(TPH a = TPH A), (TPH c = Integer), (TPH b = VecPair< TPH A, TPH B >)],
|
2015-04-22 19:40:22 +00:00
|
|
|
[(TPH b = ? extends Menge< Pair< TPH a, TPH c > >)],
|
|
|
|
[(TPH b = Menge< Pair< TPH a, TPH c > >)]]
|
2013-10-18 11:33:46 +00:00
|
|
|
*/
|
|
|
|
|
2015-04-22 19:40:22 +00:00
|
|
|
/* Menge<b> Menge<? extends Menge<Pair<Number,c>>> */
|
2013-10-18 11:33:46 +00:00
|
|
|
/* Erg:
|
|
|
|
[[(TPH c = Integer), (TPH b = VecPair< Number, TPH B >)],
|
|
|
|
[(TPH c = Integer), (TPH b = ? extends VecPair< Number, TPH B >)],
|
2015-04-22 19:40:22 +00:00
|
|
|
[(TPH b = Menge< Pair< Number, TPH c > >)],
|
|
|
|
[(TPH b = ? extends Menge< Pair< Number, TPH c > >)]]
|
2013-10-18 11:33:46 +00:00
|
|
|
*/
|
|
|
|
|
2015-04-22 19:40:22 +00:00
|
|
|
/* Menge<b> Menge<? extends Menge<a>> */
|
2013-10-18 11:33:46 +00:00
|
|
|
/* Erg.:
|
|
|
|
[[(TPH a = Pair< TPH A, Integer >), (TPH b = ? extends VecPair< TPH A, TPH B >)],
|
|
|
|
[(TPH a = Pair< TPH A, Integer >), (TPH b = VecPair< TPH A, TPH B >)],
|
|
|
|
[(TPH a = ? extends Pair< TPH A, Integer >), (TPH b = ? extends VecPair< TPH A, TPH C >)],
|
|
|
|
[(TPH a = ? extends Pair< TPH A, Integer >), (TPH b = VecPair< TPH A, TPH C >)],
|
|
|
|
[(TPH a = ? extends Pair< TPH A, ? extends Integer >), (TPH b = ? extends VecPair< TPH A, TPH D >)],
|
|
|
|
[(TPH a = ? extends Pair< TPH A, ? extends Integer >), (TPH b = VecPair< TPH A, TPH D >)],
|
|
|
|
[(TPH a = ? extends Pair< TPH A, ? extends Number >), (TPH b = ? extends VecPair< TPH A, TPH E >)],
|
|
|
|
[(TPH a = ? extends Pair< TPH A, ? extends Number >), (TPH b = VecPair< TPH A, TPH E >)],
|
|
|
|
[(TPH a = ? extends Pair< TPH A, ? extends Object >), (TPH b = ? extends VecPair< TPH A, TPH F >)],
|
|
|
|
[(TPH a = ? extends Pair< TPH A, ? extends Object >), (TPH b = VecPair< TPH A, TPH F >)],
|
|
|
|
[(TPH a = ? extends Pair< TPH A, ? super Integer >), (TPH b = ? extends VecPair< TPH A, TPH G >)],
|
|
|
|
[(TPH a = ? extends Pair< TPH A, ? super Integer >), (TPH b = VecPair< TPH A, TPH G >)],
|
|
|
|
[(TPH a = ? extends Object), (TPH b = ? extends VecPair< TPH A, TPH H >)],
|
|
|
|
[(TPH a = ? extends Object), (TPH b = VecPair< TPH A, TPH H >)],
|
|
|
|
[(TPH a = ? super Pair< TPH A, Integer >), (TPH b = ? extends VecPair< TPH A, TPH I >)],
|
|
|
|
[(TPH a = ? super Pair< TPH A, Integer >), (TPH b = VecPair< TPH A, TPH I >)],
|
2015-04-22 19:40:22 +00:00
|
|
|
[(TPH b = ? extends Menge< TPH a >)],
|
|
|
|
[(TPH b = Menge< TPH a >)]]
|
2013-10-18 11:33:46 +00:00
|
|
|
*/
|
|
|
|
|
|
|
|
|
2015-04-22 19:40:22 +00:00
|
|
|
/* Menge<VecPair<Number,Integer>> Menge<? extends Menge<a>> */
|
2013-10-18 11:33:46 +00:00
|
|
|
/* funktioniert */
|
|
|
|
/* Erg.
|
|
|
|
[[(TPH a = Pair< Number, Integer >)],
|
|
|
|
[(TPH a = ? extends Pair< Number, Integer >)],
|
|
|
|
[(TPH a = ? extends Pair< Number, ? extends Integer >)],
|
|
|
|
[(TPH a = ? extends Pair< Number, ? extends Number >)],
|
|
|
|
[(TPH a = ? extends Pair< Number, ? extends Object >)],
|
|
|
|
[(TPH a = ? extends Pair< Number, ? super Integer >)],
|
|
|
|
[(TPH a = ? extends Pair< ? extends Number, Integer >)],
|
|
|
|
[(TPH a = ? extends Pair< ? extends Number, ? extends Integer >)],
|
|
|
|
[(TPH a = ? extends Pair< ? extends Number, ? extends Number >)],
|
|
|
|
[(TPH a = ? extends Pair< ? extends Number, ? extends Object >)],
|
|
|
|
[(TPH a = ? extends Pair< ? extends Number, ? super Integer >)],
|
|
|
|
[(TPH a = ? extends Pair< ? extends Object, Integer >)],
|
|
|
|
[(TPH a = ? extends Pair< ? extends Object, ? extends Integer >)],
|
|
|
|
[(TPH a = ? extends Pair< ? extends Object, ? extends Number >)],
|
|
|
|
[(TPH a = ? extends Pair< ? extends Object, ? extends Object >)],
|
|
|
|
[(TPH a = ? extends Pair< ? extends Object, ? super Integer >)],
|
|
|
|
[(TPH a = ? extends Pair< ? super Number, Integer >)],
|
|
|
|
[(TPH a = ? extends Pair< ? super Number, ? extends Integer >)],
|
|
|
|
[(TPH a = ? extends Pair< ? super Number, ? extends Number >)],
|
|
|
|
[(TPH a = ? extends Pair< ? super Number, ? extends Object >)],
|
|
|
|
[(TPH a = ? extends Pair< ? super Number, ? super Integer >)],
|
|
|
|
[(TPH a = ? extends Pair< ? super Integer, Integer >)],
|
|
|
|
[(TPH a = ? extends Pair< ? super Integer, ? extends Integer >)],
|
|
|
|
[(TPH a = ? extends Pair< ? super Integer, ? extends Number >)],
|
|
|
|
[(TPH a = ? extends Pair< ? super Integer, ? extends Object >)],
|
|
|
|
[(TPH a = ? extends Pair< ? super Integer, ? super Integer >)],
|
|
|
|
[(TPH a = ? extends Object)],
|
|
|
|
[(TPH a = ? super Pair< Number, Integer >)]]
|
|
|
|
*/
|
|
|
|
|
2015-04-22 19:40:22 +00:00
|
|
|
/* Menge<b> Menge<? extends Menge<? extends Pair<Number,c>>> */
|
2013-10-18 11:33:46 +00:00
|
|
|
/* Erg. stimmt
|
|
|
|
[[[(TPH c = Integer), (TPH b = ? extends VecPair< Number, TPH B >)],
|
|
|
|
[(TPH c = Integer), (TPH b = VecPair< Number, TPH B >)],
|
|
|
|
[(TPH c = ? extends Integer), (TPH b = ? extends VecPair< Number, TPH C >)],
|
|
|
|
[(TPH c = ? extends Integer), (TPH b = VecPair< Number, TPH C >)],
|
|
|
|
[(TPH c = ? extends Number), (TPH b = ? extends VecPair< Number, TPH D >)],
|
|
|
|
[(TPH c = ? extends Number), (TPH b = VecPair< Number, TPH D >)],
|
|
|
|
[(TPH c = ? extends Object), (TPH b = ? extends VecPair< Number, TPH E >)],
|
|
|
|
[(TPH c = ? extends Object), (TPH b = VecPair< Number, TPH E >)],
|
|
|
|
[(TPH c = ? super Integer), (TPH b = ? extends VecPair< Number, TPH F >)],
|
|
|
|
[(TPH c = ? super Integer), (TPH b = VecPair< Number, TPH F >)],
|
2015-04-22 19:40:22 +00:00
|
|
|
[(TPH b = ? extends Menge< ? extends Pair< Number, TPH c > >)],
|
|
|
|
[(TPH b = Menge< ? extends Pair< Number, TPH c > >)],
|
|
|
|
[(TPH b = ? extends Menge< Pair< Number, TPH c > >)],
|
|
|
|
[(TPH b = Menge< Pair< Number, TPH c > >)]]
|
2013-10-18 11:33:46 +00:00
|
|
|
*/
|
|
|
|
|
|
|
|
class Number {}
|
|
|
|
class Integer extends Number {}
|
|
|
|
|
2015-04-22 19:40:22 +00:00
|
|
|
class Menge<a> { }
|
2013-10-18 11:33:46 +00:00
|
|
|
|
|
|
|
class Pair<a,b> { }
|
|
|
|
|
2015-04-22 19:40:22 +00:00
|
|
|
class VecPair<a,b> extends Menge<Pair<a,Integer>> { }
|