@@ -381,19 +381,19 @@ failsafe-structure-inference T T1 :-
381381 std.nth NP ArgsOp S,
382382 (var S ; name S), % TODO: should be the subject of the structure, not a random name
383383 !,
384- eta-structure-record NP Class ArgsOp ArgsOp1,
384+ eta-structure-record S NP Class ArgsOp ArgsOp1,
385385 coq.mk-app OP ArgsOp1 Subject1,
386386 coq.mk-app (app F_Params1) [Subject1|Args1] T2) =>
387387 copy T T1.
388388
389- pred eta-structure-record i:int, i:classname, i:list term, o:list term.
390- eta-structure-record NP Class L L1 :-
389+ pred eta-structure-record i:term, i: int, i:classname, i:list term, o:list term.
390+ eta-structure-record S NP Class L L1 :-
391391 std.split-at NP L Params [_|Rest],
392392 class-def (class Class Structure _),
393393 get-constructor Structure K,
394394 std.map Params copy Params1,
395395 std.map Rest copy Rest1,
396- coq.mk-app {coq.env.global K} {std.append Params1 [_ ,_]} EtaS,
396+ coq.mk-app {coq.env.global K} {std.append Params1 [S ,_]} EtaS,
397397 std.append Params1 [EtaS|Rest1] L1.
398398
399399pred prod-last i:term, o:term.
0 commit comments