mirror of
https://codeberg.org/ProgramSnail/prog_synthesis.git
synced 2025-12-06 05:28:42 +00:00
02: unique exprs: better concat
This commit is contained in:
parent
67fabd4dc2
commit
99b0b9d672
1 changed files with 11 additions and 11 deletions
22
02.hs
22
02.hs
|
|
@ -101,19 +101,19 @@ nextExprsLists' newExprs oldExprs = let listNewExprs = [ e | e <- newExprs, type
|
|||
let listOldExprs = [ e | e <- oldExprs, typeOf e == ListT] in
|
||||
let intOldExprs = [ e | e <- oldExprs, typeOf e == IntT] in
|
||||
nextSimpleExprsLists newExprs ++
|
||||
[[e :+: e' | e <- listNewExprs, e' <- listNewExprs],
|
||||
[e :+: e' | e <- listNewExprs, e' <- listOldExprs],
|
||||
[e :+: e' | e <- listOldExprs, e' <- listNewExprs],
|
||||
[SubList e from to | e <- listNewExprs, from <- intNewExprs, to <- intNewExprs],
|
||||
[SubList e from to | e <- listOldExprs, from <- intNewExprs, to <- intNewExprs],
|
||||
[SubList e from to | e <- listNewExprs, from <- intOldExprs, to <- intNewExprs],
|
||||
[SubList e from to | e <- listNewExprs, from <- intNewExprs, to <- intOldExprs],
|
||||
[SubList e from to | e <- listOldExprs, from <- intOldExprs, to <- intNewExprs],
|
||||
[SubList e from to | e <- listOldExprs, from <- intNewExprs, to <- intOldExprs],
|
||||
[SubList e from to | e <- listNewExprs, from <- intOldExprs, to <- intOldExprs]]
|
||||
[concat [[e :+: e' | e <- listNewExprs, e' <- listNewExprs],
|
||||
[e :+: e' | e <- listNewExprs, e' <- listOldExprs],
|
||||
[e :+: e' | e <- listOldExprs, e' <- listNewExprs]],
|
||||
concat [[SubList e from to | e <- listNewExprs, from <- intNewExprs, to <- intNewExprs],
|
||||
[SubList e from to | e <- listOldExprs, from <- intNewExprs, to <- intNewExprs],
|
||||
[SubList e from to | e <- listNewExprs, from <- intOldExprs, to <- intNewExprs],
|
||||
[SubList e from to | e <- listNewExprs, from <- intNewExprs, to <- intOldExprs],
|
||||
[SubList e from to | e <- listOldExprs, from <- intOldExprs, to <- intNewExprs],
|
||||
[SubList e from to | e <- listOldExprs, from <- intNewExprs, to <- intOldExprs],
|
||||
[SubList e from to | e <- listNewExprs, from <- intOldExprs, to <- intOldExprs]]]
|
||||
|
||||
nextExprs' :: [Expr] -> [Expr] -> [Expr]
|
||||
nextExprs' newExprs oldExprs = concatShuffle $ nextExprsLists' newExprs oldExprs
|
||||
nextExprs' newExprs oldExprs = concatShuffle $ nextExprsLists' newExprs oldExprs
|
||||
|
||||
data Example = Example {exampleInput :: [Int], exampleOutput :: [Int]}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue